Re: Dlang: The Complete D programming Language Course

2020-07-23 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2020-07-23 at 14:39 +, Greatsam4sure via Digitalmars-d-announce
wrote:
> On Thursday, 23 July 2020 at 01:13:25 UTC, aberba wrote:
> > Found this introductory course from Udemy on D
> > 
> > 
> > Complete introduction to programming in D. Learn by doing 
> > assignments and projects.
> > https://www.udemy.com/course/d-programming-language/
> 
> 
> This is lovely. How, wish this training  is free.

Wouldn't it be nice if all programmers wrote all programs for free.

-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-07-03 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2020-07-02 at 13:28 +, Abdulhaq via Digitalmars-d-announce wrote:
> 
[…]
> Herb Sutter is a national treasure, C++ has become bearable, nay 
> even useful, under his stewardship and that is really saying 
> something

s/national/international/

Herb's closing keynote at ACCU 2017 was a joy to be in, even as a C++
disliker. The energy he generated in the mostly pro-C++ audience was
astounding.

https://www.youtube.com/watch?v=6nsyX37nsRs=PL9hrFapz4dsMQuBQTnHXogJpMj6L_EQ10

I should add the questions went on for over an hour after the talk. I only
brought it to an end so that people could go home – and the hotel and A/V
staff could clear up. Even then Herb was another 20 or 30 minutes answering
further questions as the room around them was disassembled.
 
-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-07-03 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2020-07-02 at 18:22 +, Dibyendu Majumdar via Digitalmars-d-
announce wrote:
[…]
> So why was Java successful? It was not compatible with an 
> existing language.

Java has a weird history compared to other languages. It switched from white
goods programming language to browser programming language just at the moment
a large number of academics world wide were getting dissatisfied with
Pascal/C/C++/Scheme/Miranda/OCaml as the set of languages to choose from to
teach first year programming. It very rapidly failed as a browser language,
but switched wonderfully quickly to be a virtual machine based general
programming language. Timing is everything here… a large number of academic
jumped on the Java bandwagon, so a large number of undergraduates were forced
to learn it. There was a period in late 1990s and early 2000s when every CS
graduate knew Java, and, to the eternal shame of academics, no other
programming language.

The second part of the success, at least in London, was the dissatisfaction of
many in the finance industry with Smalltalk. They saw Java, and the number of
Java programmers being produced by academic and switched to Java. The rest, as
they say, is history.

> Neither Rust nor Go are compatible with C++.
> Rust, D and Go are all compatible with C in some sense.

C is the portable assembly language of computing, any high level programming
language that cannot use C APIs is a dead language.

> Basically Herb is claiming to succeed a language must be able to 
> be a drop in replacement for C++ in a mix-match way. I think it 
> is a fallacy.

Herb does have a (not exactly) hidden agenda that C++ is the one true
programming language.

> There is no single recipe that will make a language successful.

Very true.

-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-07-03 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-29 at 15:45 +, Dagmar via Digitalmars-d-announce wrote:
> On Monday, 29 June 2020 at 12:17:57 UTC, Russel Winder wrote:
> > Of course C++ is now really a niche language used by those who 
> > still use it and do not move on to more modern languages!
> 
> I am a C++ developer. I do want to move to a modern language, but 
> there is no one that fits my needs.

So stick with C++? Changing language is not always the right choice. But it is
a very context dependent decision.

> Rust has a very promising ownership-borrowing concept but the 
> lack of OOP and its awful syntax (mostly because of lifetimes) 
> make it a no go for me.

In the classic terminology, Rust is object based not object oriented. The
question is whether inheritance is crucial for the application. Clearly
inheritance is crucial to GTK, so the gtk-rs folk have created an inheritance
system in Rust.

In my experience, unless you are writing a library type, if your code has
lifetime variables then "you are doing it wrong". As soon as I stopped trying
to use any lifetime variables in my Rust applications it all got a lot easier.
Of course for library code that has to worry about lifetimes, they are needed.

> Go is just an oversimplified language. No generics/teplates in 
> 2020, seriously?

Actually the Go core team are very serious about not having generics in Go.
Despite the plethora of proposals, none have really made it. I do wonder if
often the objections to a proposal are more along the lines of "we didn't
think of that so it is not going in".

I think there will eventually be generics in Go, but I have no idea when. To
be open, I have stopped using Go. Not so much because of the language, but
because the GTK and GStreamer bindings are somewhat second rate.

> D has a GC. If you turn it off you lose dynamic/associative 
> arrays, classes, probably something else. Why would I even want 
> to use such language at all? It's much easier to stay with C++ 
> this way, since it has lots of C/C++ libraries, IDEs, tools, 
> broad community, support of big companies.

Or use Rust. ;-)

[…]
> C++20 is a big improvement at least because of concepts, 
> coroutines, and ranges.

I can't say I will be tempted back to C++, the GTK and GStreamer bindings are
a bit second rate. Having got into D and Rust for doing my desktop
applications, I am not going back.

[…]
-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-07-01 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-29 at 15:44 +, Patrick Schluter via Digitalmars-d-announce 
wrote:
> 
[…]
> And that is completely wrong headed. Internet is not always 
> directly accessible. There are a lot of companies that restrict 
> access to the Internet for their security sensible servers, 
> 
[…]
> No, Internet is not always as easy peasy and having a language 
> that can live alone and provide quite a lot of features without 
> always calling home is a good thing.
> 
[…]

So that is Java out then as a language to use for corporate software
development activity.

Way back when I was running a company or two, I put in place "you can't access
the internet directly for dependencies" system, more to lower bandwidth use
than security it has to be said. So we bought another disc and mirrored the
repository – but not slavishly, just the bits we needed and with various scans
and tests to try and stop any rogue software. This seemed to be the standard
sort of behaviour back then. Perhaps this is not what happens now?

-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-07-01 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-29 at 20:41 +, Paulo Pinto via Digitalmars-d-announce
wrote:
[…]
> 
> Rust has only standardized part of the async/await story, the 
> asynchronous
> runtime is not part of the standard library, so currently it is 
> impossible to write code that works flawlessly across the 
> existing runtimes.
[…]

Actually this is a good thing in that I can write Rust async/await code and
have it run on the GTK event loop. Here we have a case of multiple vendor
implementations of a single standard interface. The problems tend to be in the
implementations of the event loops not the bit that is effectively (de facto
rather than de jure) standardised.

[…]
> The typical scenarios where we would use GPGPU shaders, iDevices, 
> Android and Windows drivers, Arduino, SYCL, DPC++, Unreal, 
> XBox/PS/Switch SDKs, ...

Not my area, but my guess is that there is sufficient pre-existing code base
that it is not feasible to switch languages, staying with the languages of the
pre-existing codebase is the sensible thing to do unless someone comes along
with a big pot of money.
 
[…]
> Java has a standard to guide for, updated for each language 
> release.
> 
> So it doesn't need to be ISO, can be ECMA, or some other formal 
> writen  specification, with multiple vendor implementations.

Java is really standardised by the implementaion of OpenJDK. There is no
standard agreed by any formal body other than the JCP executive committee.
There are three maybe four implementations, the one everyone uses, and the
other you have to pay for.

-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-06-29 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-29 at 12:41 +, Paulo Pinto via Digitalmars-d-announce
wrote:
[…]
> 
> Concepts, coroutines, and modules are already in ISO C++20.

Only once the standard is voted in.  :-)

Also ranges are in I believe.

> And co-routines are in a much better story than the incompatible 
> runtimes currently existing for Rust async/await story.

I have not used C++ co-routines, but having used Rust co-routines, they seem
fine. You need to make good on your negative criticism – which I would like to
hear.

> Rust still needs to improve a lot on its tooling and ecosystem to 
> cover many of the scenarios we use C++ for, even if is safer.

I can believe that may be true for others, but for me JetBrains CLion, Rustup,
and Cargo make for an excellent environment. crates.io works very well –
better than CLion, CMake, and lots of manual hacking around to get libraries
for C++.

> Already the fact that it lacks an ISO standard is a no go in many 
> domains.

That is a choice for those organisations. I am guessing those organisations do
not use Java, D, Python, etc.

> I guess you mean using Python as glue for GPGU libraries written 
> in C++.

In C, but yes. Though I haven't done it in a while now.

-- 
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


Re: Talk by Herb Sutter: Bridge to NewThingia

2020-06-29 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-29 at 10:31 +, IGotD- via Digitalmars-d-announce wrote:
> 
[…]
> Back to C++20 and beyond which Herb Sutter refers to a lot. Is 
> C++20 a success, or even C++17? Does anyone know this? Modern C++ 
> isn't a programming standard so what I've seen is just a mix of 
> everything.

I guess the question is whether concepts, coroutines, and modules finally make
it in. The really interesting question is whether metaclasses make C++23.

Of course C++ is now really a niche language used by those who still use it
and do not move on to more modern languages!

> I have lost track of all new C++ features and now he even refers 
> it as "NewLang" what that is. Is that Bjarnes famous quote 
> "Within C++, there is a much smaller and clearer language 
> struggling to get out."? I believe it when I see it.

The problem is backward compatibility. Every new feature in C++ requires
backward compatibility with all previous C++, leading to a more and more
complex language. Fortran has the same problem but easier to cope with as it
is a simpler language. Languages without standards do not have this problem.
Except when language developers introduce breaking changes and a section of
the user population screams "we must have backward compatibility". What they
mean really is that they do not want to maintain their code. The Java folk
showed how this pans out: eventually companies that will not deal with
breaking changes go bust and are no longer a problem.

I am sure this will be seen as a rant and a troll, but that doesn't stop it
also being true.

> One thing that isn't mention that is very important for a 
> language to succeed is libraries. C++ has a lack of standard 
> libraries which forces the programmer to look for third party 
> alternatives, which are of varying standard. This leads to that 
> the there is no particular programming API standard it must 
> gravitate to the lowest common denominator. This in contrast to 
> Phobos which is more complete.

Another rant…

…batteries included standard libraries are a thing of the 1990s and earlier.
They are a reflection of pre-Internet thinking. You got a language
distribution, and everything else was home grown.

Now we have the Internet you can get libraries via download. Languages come
with the minimal library needed to function and all else is gettable. Go,
Rust, Python, and other languages have this (even though Python still has a
batteries included standard library). C++ has moved on to this idea; Conan (or
other system) hasn't really caught on in C++ circles. Ditto Fortran, still
using pre-2000 thinking.

D is in a similar position to Python, a huge batteries included standard
library much of which should be culled, or at lease marked as deprecated, and
has an central package repository for people to use. Rust, Go, and Python,
show the way here. Libraries can spring up, evolve, die off, all controlled by
usefulness to the user population. C++ people's focus on "the standard" seems
to be stopping them doing good things.

> Does C++ need more language features or does C++ need better 
> standard libraries? I would say the latter. If it weren't for Qt, 
> C++ would just be a skeleton language. Qt is a great library and 
> was that even before C++11 which proves that the new language 
> features weren't that important.
> 
> What do you think, did "modern C++" really succeed?

Clearly Modern C++, aka C++11, was a great innovation and step forward. C++14,
C++17, and I guess C++20 move the language forward.

On the other hand people are stopping using C++ in favour of Go, Rust, Python,
but it seems not D.

-- 
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


Re: unit-threaded v1.0.0

2020-06-01 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2020-06-01 at 08:41 +, Atila Neves via Digitalmars-d-announce
wrote:
[…]
> Out of curiosity, what is the difference for you between:
> 
> testFoo() { /* ... */ }
> 
> and:
> 
> @("foo")
> unittest { /* ... */ }

Primarily consistency with the way all other unit test frameworks which are
based on test functions – I am not a fan of class-based unit tests hence using
pytest in favour of unittest in Python. Using functions just feels more
normal.

Secondarily lack of understanding of the scope rules of multiple unittest
blocks.

In the end though I use whatever is provided. So if functions are for the
chop, I will switch to using labelled unittest blocks.

-- 
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


Re: unit-threaded v1.0.0

2020-05-28 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2020-05-28 at 15:35 +, Atila Neves via Digitalmars-d-announce
wrote:
> I decided to stop being like Google and finally tag version 1 of 
> unit-threaded:
> 
> https://code.dlang.org/packages/unit-threaded
> 
>  From now on I'm going to focus on compilation speed (no matter 
> how ugly that might make the implementation), and also dropping 
> support in v2.x.x for anything other than unittest blocks (bye 
> bye test classes and functions).

This last is sad, for me. I like using test functions rather than named
unittest blocks.

-- 
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


Re: LDC 1.21.0

2020-04-25 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2020-04-24 at 11:19 -0700, H. S. Teoh via Digitalmars-d-
announce wrote:
[…]
> 
> Awesome!
> 
> Many thanks to the LDC team for the hard work to bring this awesome
> compiler to us!

Agreed. Very much agreed.

Hopefully the Debian D packaging folks can be speedy getting this new
version of LDC into Debian Sid.

-- 
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


Re: dud: A dub replacement

2019-11-19 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2019-11-19 at 10:32 +, Joseph Rushton Wakeling via Digitalmars-d-
announce wrote:
> […]
> 
> I'm simply concerned that if we don't put enough scrutiny on the 
> app features and behaviour, we run the risk of simply reproducing 
> some of the problematic design decisions of the existing tool.
> 
> As an example -- try running `dub test --build=release`.  
> Intuition suggests that this is testing a release build.  But 
> actually it strips out your unittests, because `--build=release` 
> determines not only the optimization flags, but the complete set 
> of DFLAGS used -- and `-unittest` isn't among them.
> 
> I ran `dub test && dub test --build=release` as a matter of habit 
> for some time before discovering the latter wasn't actually 
> testing anything.  And while I now know that I _can_ define a 
> custom build to get what I want, that's clumsy and hard(er) to 
> discover, and annoying to have to repeat for every project I 
> create.
> 
> That's the kind of usability and design concern we really ought 
> to be revisiting in any rewrite.

How can I not agree with this being a critical bug in Dub!

:-)

-- 
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


Re: dud: A dub replacement

2019-11-19 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2019-11-19 at 10:38 +, Joseph Rushton Wakeling via Digitalmars-d-
announce wrote:
> On Monday, 18 November 2019 at 20:48:53 UTC, bachmeier wrote:
> > IMO this is one of the most important parts of the first five 
> > minutes with the language. Someone has installed the compiler, 
> > and now they want to test it out. If they have a bad experience 
> > with Dub, they will not continue with the language. A package 
> > manager, including the choice of format, is something you have 
> > to get right. Rust understands this.
> 
> Fair point.  But that isn't something that has to be decided at 
> the _start_ of a rewrite: better to focus on wanted behaviour, 
> and then derive the ideal config format from that.

I'd argue that from a socio-technical perspective it is an important factor
that should be an integral part of developing any user facing tool. The
functionality of the tool is important, but how that functionality is
presented to a user new to the tool and a user proficient with the tool should
be equally important.

As an example of how not to do things, perhaps I can suggest earlier forms of
Git. It took nigh on a decade to simplify things to get to the overcomplicated
CLI we have today with Git.

-- 
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


Re: dud: A dub replacement

2019-11-19 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 20:19 +, Tobias Pankrath via Digitalmars-d-announce
wrote:
> On Monday, 18 November 2019 at 19:54:38 UTC, Russel Winder wrote:
> 
> > Probably yes. Though Cargo has taken many different decisions 
> > to Dub and mostly I think Cargo took better decisions.
> 
> Could you elaborate a bit, please? I am not familiar with Cargo 
> though.

The single biggest difference for me just now is management of compilation
products.

In an attempt to share compiled products between projects, Dub keeps all
downloaded package source and compilations products of that source in a
central location. This ends up with a very complicated, and more or less
unusable except by Dub, store of compilation products – especially as the easy
to get to compilation product has unknown compilation details. Also it assumes
you have infinite amounts of disc space.

Cargo keeps the downloaded package sources centrally, but leaves all
compilation products in the project build area. This makes it easy to manage
and the compilation details of the compilation products are easy to
understand. OK you still have to manually manage the central repository but as
it is source only, you get a much smaller growth to infinite disc space
requirement.

As for smaller issues:

I prefer TOML over SDL as project specification notation (JSON is not an
option for me).

The convention over configuration rules for projects with multiple compilation
products is nicer in Cargo compared to Dub.

Cargo is far more accepted in Rust circles than Dub is in D circles. The issue
is not that this is true, but why is it true: is it just that D folk are still
obsessed with Make, SCons, CMake, Meson, etc. where Rust folk have never even
considered them.

D is still working with the ancient philosophy of the distributed standard
library provides everything, cf. Python and "batteries included". Python has
long ago had to give up on this and open its arms to PyPI based package
distribution.  Go and Rust never went with the "batteries included" but put
the infrastructure in place at the outset for supporting libraries from
repositories – Rust/Cargo handles this far better than Go. The upshot is that
the D package repository is still not really central to D code development.
And using Git, Breezy, Mercurial, etc. repositories is just not as simple and
straightforward as it is with Go and Rust/Cargo.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 16:54 +, JN via Digitalmars-d-announce wrote:
> […]
> 
> I only use the JSON format. JSON is widespread together with XML. 
> SDL I heard first time of in the context of Dub and never seen it 
> used elsewhere. TOML also I know only from Cargo. YAML at least I 
> know from several different projects.

It is so easy to make spelling errors in keys using hand-written JSON.

SDL I have only ever used with Dub, but it works better for me than JSON.

TOML is really an INI evolution so known to many.

YAML is used by many but doesn't really allow for the ease of specifying lists
as TOML and SDL have.

> I guess the tool must be working very well though if the main 
> argument is what kind of data format to use :)

Probably yes. Though Cargo has taken many different decisions to Dub and
mostly I think Cargo took better decisions.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 15:35 +, Joseph Rushton Wakeling via Digitalmars-d-
announce wrote:
> 
[…]
> It is quite extraordinary how readily folks fall to arguing over 
> what the config format should be, rather than what the app should 
> actually be able to do. :-\

Perhaps because writing the configuration files is a critical part of the
usability of the tool.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 09:53 +, Paolo Invernizzi via Digitalmars-d-announce 
wrote:
[…]
> A win-win move would be to have dud emit the other formats 
> automatically as part of the compilation procedure, so to have 
> always all of them present and synced on the content.

Why? In fact, why even think of doing this at all?

There should be one and only one human written configuration file for a build
and it should be in a notation suitable for being written by humans.

> It shouldn't be too much difficult, and maybe it's a cleaver way 
> to move on from discussions about different formats.

Again why? It seems like a pointless overhead that achieves nothing
constructive.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 10:26 +, Sebastiaan Koppe via Digitalmars-d-announce 
wrote:
> On Monday, 18 November 2019 at 09:53:56 UTC, Paolo Invernizzi 
> wrote:
> > A win-win move would be to have dud emit the other formats 
> > automatically as part of the compilation procedure, so to have 
> > always all of them present and synced on the content.
> 
> I already regret starting about this. Instead of rooting for the 
> SDL format, I should have just recommended to deprecate the json 
> one.

I do not think you should regret starting a discussion on this.

Personally I only ever use SDL with Dub. Even contemplating using JSON for
human written configuration files is, for me, totally the wrong thing to do.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-11-18 at 09:31 +, Sebastiaan Koppe via Digitalmars-d-announce 
wrote:
> On Monday, 18 November 2019 at 08:57:58 UTC, Russel Winder wrote:
> > Is SDL the right format? Cargo uses TOML to great effect.
> > 
> > And TOML has, I suspect greater traction more widely than SDL.
> 
> I personally prefer SDL when it comes to nested data, but yeah, 
> that would work as well.
> 
> The point I was making is to just have 1 format. With dud that 
> should be possible.

For me the argument is that SDL and TOML are intended for human's to write
configuration scripts, whilst XML and JSON are intended for computers to send
data to other computers.

-- 
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


Re: dud: A dub replacement

2019-11-18 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2019-11-17 at 19:10 +, Sebastiaan Koppe via Digitalmars-d-announce 
wrote:
> On Sunday, 17 November 2019 at 16:26:45 UTC, Denis Feklushkin 
> wrote:
> > On Thursday, 14 November 2019 at 23:33:06 UTC, Nick Sabalausky 
> > (Abscissa) wrote:
> > Also, this, apparently, should lead to the fact that dud will 
> > have their own package description format. Almost inevitable. 
> > (This has already been discussed, perhaps.)
> 
> SDL all the way please.

Is SDL the right format? Cargo uses TOML to great effect.

And TOML has, I suspect greater traction more widely than SDL.

-- 
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


Re: Compiler benchmarker for D, C, C++, Go, Rust with more to come

2019-10-22 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2019-10-21 at 12:25 +, Per Nordlöw via Digitalmars-d-announce
wrote:
> On Monday, 21 October 2019 at 12:12:56 UTC, Per Nordlöw wrote:
> > Is it prepackaged on Ubuntu?
> 
> Do you mean the package golang-go?

I am not sure what Ubuntu package version is, with it's 6 month or 3 year
update cycle it is almost certainly well out of date, but Debian Sid tries to
stay up to date. golang-go is currently golang-1.13-go but you can use the
meta-package golang-1.13 to enforce that version.

-- 
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


Re: gtkDcoding Facelift Launch

2019-07-09 Thread Russel Winder via Digitalmars-d-announce
[…]
> 
> And instead of linking directly to the article, here's a link to 
> the main page so you can see the entire facelift: 
> https://gtkdcoding.com.

Excellent stuff. Thanks for putting in the effort on this, it is well worth
it.

-- 
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


Re: GtkD 3.9.0, A GTK+ D binding.

2019-05-30 Thread Russel Winder via Digitalmars-d-announce
Mike,

Great stuff, I must restart doing some D/GtkD programming!

Debian is, I believe, in release freeze so this release will not be
packaged for Debian Sid any time soon. Will it be packaged into Debian
Experimental so we can install GtkD 3.9.0 via packages?

gstreamer 1.16.0 is in the same position, released post freeze,
packaged into Debian Experimental.


On Wed, 2019-05-29 at 22:30 +0200, Mike Wey via Digitalmars-d-announce
wrote:
> GtkD is a D binding and OO wrapper of Gtk+ and is released on the
> LGPL 
> license.
> 
> At this point it feels long overdue, but finally there is an GtkD 
> release that is updated for the latest GTK+ libraries.
> 
> And i finally took the time to change the documentation on the
> website 
> from candydoc to one generated by Adam's adrdox. https://api.gtkd.org
> 
> Full changelog: https://gtkd.org/changelog.html
> Download: https://gtkd.org/download.html
> 
-- 
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


Re: Let's celebrate Dlang on D day

2019-05-25 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2019-05-25 at 21:56 +, Murilo via Digitalmars-d-announce
wrote:
[…]
> 
> Sorry people, I did not mean to disregard the heros of D Day. It 
> is because I am latin american and here nobody cares about the 
> second WW cause we didn't participate much. I didn't know that in 
> the US you people had all of that respect for D Day.

It's not just the USA, D-Day is a very big deal in the UK and France. I
suspect also The Netherlands and Belgium, and probably other places in
western Europe, including Germany.

Having said that, I believe there will be no problem hanging a D
programming language marketing activity on the D-Day celebrations if
the intention is to progress activities that help soldiers and/or
victims associated with the D-Day landing, or indeed anyone indirectly
associated with the landings. 

The issue here is to be subtle and sympathetic/empathetic.

-- 
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


Re: New and Unofficial OpenCV binding for D programming language

2019-04-05 Thread Russel Winder via Digitalmars-d-announce
To add to the pool of OpenCV activity, it is worth pointing out that GStreamer
supports OpenCV and D has a binding to GStreamer via GStreamerD which is a
part of GtkD.


On Thu, 2019-04-04 at 23:08 +, Ferhat Kurtulmuş via Digitalmars-d-announce 
wrote:
> Hi folks!
> 
> D is awesome, but it is a shame that there is no any opencv 
> bindings for d yet. Actually we have it now :) Although I am a 
> new dlang learner, I dared to do it: 
> https://github.com/aferust/opencvd. C interface was taken from 
> gocv, and the implementation has been highly influenced by gocv 
> (maybe it is better to make git submodule it, since gocv project 
> is being updated very often?). I admit that it is far from being 
> a complete binding, but it is a beginning. I invite you lovely 
> and pro dlang community to grow it. I did not want to add it to 
> code.dlang.org before it become a better binding.
-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-27 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2018-12-27 at 02:13 +, Joakim via Digitalmars-d-announce wrote:
> […]
> 
> Wow, you've really gone off the deep end now. First you lie that 
> I presented no data, then when called out, start claiming 
> defamation and talk about bringing lawyers into it.

You seem to be a beginner at gaslighting. Your initial data was simply two
articles expressing an opinion. There was no data about conferences generally
just a perception of a failure of conferences in the iOS arena.

> Good luck with that. :)

I will have good luck. The lawyer is a person I have done expert witness work
for on libel and email usage in the past in the High Court. I am not a
beginner at this sort of thing.

You will treat this email as a formal cease and desist letter requiring you
stop defaming my character in public written statements. If you continue to
defame me in public emails, I will escalate and apply for a cease and desist
order in the High Court. 

-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-26 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2018-12-26 at 09:45 +, Joakim via Digitalmars-d-announce wrote:
> 
[…]
> Wtf are you talking about? I've never emailed you in my life. If 
> you mean in this forum thread, quote what you think is "personal 
> abuse," I see none.

We can get to that later, no need for now given your statement below.

[…]
> I have not made my point, since most responding seem to think I'm 
> trying to lessen in-person interaction, like even Walter above 
> with his concert example, when that's the opposite of what I'm 
> saying! I chalk that up to people like you, who lie about my not 
> presenting any data when that's clearly linked in my first post, 
> either because you don't know how to read or choose to lie anyway.

So we do not need any history of this thread to see that you have no
compunction libelling people. Yes there is free speech, but there is also
defamation via the written word which is a civil offence in UK law. This
paragraph is almost certainly libellous. I am tempted to take legal advice
from a UK libel solicitor of my acquaintance.

> For someome who claims not to give a shit, you certainly keep 
> replying a lot to me and lying about what I wrote.

You claimed you were going to stop engaging with me, email on this list 2018-
12-23T0808+00:00, but it seems you are failing to keep your promises.

-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-26 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2018-12-26 at 05:07 +, Joakim via Digitalmars-d-announce wrote:
> […]
> I wrote. I have never called anyone any name or insult in 
> anything I wrote. I have used a pejorative for a type of argument 
> that was being used, or characterized certain actions negatively. 
[…]

I beg to differ. I have the emails with you hurling personal abuse.

Your continuous, data free, but combative on others providing no data,
hectoring is beginning to annoy people who are trying to be constructive
within the D community. You have made your point, that you believe, and no one
else here now gives a shit about.

-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-23 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2018-12-23 at 08:08 +, Joakim via Digitalmars-d-announce wrote:
[…]
> 
> This questioning of iOS is so removed from reality that it makes 
> me question if you are qualified to comment on this matter at 
> all. iOS is the largest consumer software platform that is still 
> growing, as it's estimated to bring in twice the revenue of 
> google's Play store (that doesn't count other Android app stores, 
> but they wouldn't make up the gap):

Fair enough I have no interest in iOS at all. But you must agree that you are
clearly so far removed from the reality of putting on technical conferences
generally, that you are not qualified to make assertions such as "conferences
are a dead form".

> You could make various arguments for why they're still having 
> less and less conferences, as my second link above listing them 
> does. But to argue that iOS is not doing well is so ludicrous 
> that it suggests you don't know much about these tech markets.

Ludicrous is a good description of the entire situation in this thread. You
are making assertions as though they are facts, working on the principle that
if you shout long enough and loud enough, people will stop disagreeing. A
classic technique.

[…]

> Yes, the proof is there: the conference is dying. You simply 
> don't want to admit it.

This is just assertions with no  data and thus is a religious position. And I
know conferences are thriving, you just do not want to admit that.

> This seems to be a religious issue for you, with your bizzare 
> assertions above, so I'll stop engaging with you now.

No it is you that has faith in the death of conferences, I am involved in the
reality of conferences being a relevant thing that people want to attend. Just
because you do not want to go to conferences doesn't give you the right to try
and stop others from doing so. 

If you are going to stop ranting on this, I think that will make a lot of
people very happy. The idea of this email list is to announce things, not
debate things. Also on the debating lists the idea is to have a collaborative
not combative debate about things. That includes if some people want to do
something they should be allowed to do it and not be harangued from the wings.
If people want to have a DConf, it is not your position to tell them they
cannot.

-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-22 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-12-22 at 13:46 +, Joakim via Digitalmars-d-announce wrote:
> 
[…]
> Given that this conference format is dying off, is there any 
> explanation for why the D team wants to continue this antiquated 
> ritual?
> 
> https://marco.org/2018/01/17/end-of-conference-era
> http://subfurther.com/blog/2018/01/15/the-final-conf-down/
> https://forum.dlang.org/thread/ogrdeyojqzosvjnth...@forum.dlang.org

[…]

So iOS conferences are a dying form. Maybe because iOS is a dying form? Your
evidence of the failure of the iOS community to confer is not evidence of the
failure of the conference in other communities. Others have cited Rust and Go.
I shall cite Python, Ruby, Groovy, Java, Kotlin, Clojure, Haskell, all of
which have thriving programming language oriented conferences all over the
world. Then there are the Linux conferences, GStreamer conferences, conference
all about specific technologies rather than programming languages. And of
course there is ACCU. There is much more evidence that the more or less
traditional conference format serves a purpose for people, and are remaining
very successful. Many of these conferences make good profits, so are
commercially viable.

Thus I reject the fundamental premise of your position that the conference
format is dying off. It isn't. The proof is there.

-- 
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


Re: DConf 2019: Shepherd's Pie Edition

2018-12-22 Thread Russel Winder via Digitalmars-d-announce
Brilliant, DConf comes to the UK, I can get to it…

except…

it's on at the exact same time as DevoxxUK 2019 which is at the
Business Design Centre. :-(

-- 
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


Re: Blog post: What D got wrong

2018-12-18 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2018-12-19 at 01:45 +, Neia Neutuladh via Digitalmars-d-announce
wrote:
> On Wed, 19 Dec 2018 01:04:24 +, Nathan S. wrote:
> > On Saturday, 15 December 2018 at 19:53:06 UTC, Atila Neves wrote:
> > > Not the case in Rust, not the case in how I write D. TBH it's not such
> > > a big deal because something has to be typed, I just default to const
> > > now anyway instead of auto. @safe and pure though...
> > 
> > I'd be interested in seeing some of that Rust code. My impression from
> > Clojure is that an all-immutable style requires leaning heavily on the
> > garbage collector and as far as I know Rust has none.

Rust is garbage collector free. This is why it is appealing to the C (and C++)
people who think garbage collectors are anathema.

Rust has let and let mut to introduce new bindings and variables respectively,
you have to type less for immutable, which his the right way round. If you
want mutability, you have to say so explicitly. Single assignment rocks. :-)  

> It is greatly simplified by automatic memory management. Rust doesn't have 
> a GC, but it has a complex ownership system instead, and that's the basis 
> of its memory management. When that's insufficient, you use reference 
> counting.

With Rust (as with most languages) you have to separate stack and heap
allocation. The Rust borrow checker carefully tracks all stack usage and
(caveat unsafe activity) will not compile code that has any memory problems
that the borrow checker can find. For the heap, Rust provides reference
counted pointers which work a lot better than the equivalents in C++:
std::shared_ptr and std::unique_ptr can be a right pain. Also of course,
unlike C++, Rust has very good support for multi-threading in the language and
the standard library, mostly built around std::Mutex. Rust integrates all this
with std::Option, std::Error, if let, and match in a way that makes dealing
with locks and RAII quite simple. C++ may have brought RAII to mainstream
programming, but it's support for multiple threads is still very weak 
comparedto D, Rust, Go, etc.  

[…]

--
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


Re: Blog post: What D got wrong

2018-12-18 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2018-12-18 at 16:50 +, Neia Neutuladh via Digitalmars-d-announce
wrote:
> On Tue, 18 Dec 2018 08:17:28 +, Russel Winder wrote:
> > I did a lightning talk at the GStreamer conference in Edinburgh a couple
> > of months ago, concluding that I think D (which about half the audience
> > knew of) is overall better than Rust for GTK+ and GStreamer
> > applications, but recognising that Rust is actually the replacement for
> > C and C++ for GTK+ and GStreamer applications. (Obviously Python has an
> > ongoing role in all this as well.)
> 
> Is there a video link for that talk? I'd be interested in hearing it.

The videos are here:

https://gstconf.ubicast.tv/channels/#gstreamer-conference-2018

I think they recorded the lightning talks as a single video, so you'll have to
fast forward to my little bit.

I see from:

https://pengutronix.de/de/2018-10-29-gstconf-2018.html

That it has been described "an entertaining lightning talk about the history
of MeTV, a live TV viewing application, up to the latest rewrite in Rust using
GStreamer"

-- 
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


Re: Blog post: What D got wrong

2018-12-18 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2018-12-18 at 12:20 +, Kagamin via Digitalmars-d-announce wrote:
> On Tuesday, 18 December 2018 at 10:19:14 UTC, Russel Winder wrote:
> > Clojure is but you have to work hard for that, the initial 
> > language is effectively pure.
> 
> https://ideone.com/y8KWja clearly it isn't, its site only claims 
> that most code happens to be pure, but it looks like it's not 
> checked in any way and not sure if purity can be even checked 
> there.

Can we all agree that Haskell is a pure functional language. I think we must
because: a) it says it is, and b) it is.

   f2 = print "Hello World."
   f1 = f2
   main = do
 f1

result of running this:

   GHCi, version 8.0.1
   >
   "Hello World."
   >

OK so Haskell uses monads and Clojure just uses the JVM I/O. Haskell is pure,
Clojure is impure. But I stand by my original statement: Clojure is best used
as a pure language.

Even if I/O is impure, you can make it pure with monads if you really have to.
 
-- 
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


Re: Blog post: What D got wrong

2018-12-18 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2018-12-18 at 09:59 +, Kagamin via Digitalmars-d-announce wrote:
> 
[…]
> AIU rust, clojure and prolog are impure.

Clearly Rust is because it allows for mutability, though it is not the
default.

Clojure is but you have to work hard for that, the initial language is
effectively pure.

I have no idea how the term impure can be applied to Prolog.
 
-- 
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


Re: Blog post: What D got wrong

2018-12-18 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-12-17 at 12:16 -0800, Walter Bright via Digitalmars-d-announce
wrote:
> […]
> 
> Going pure, however, is much harder (at least for me) because I'm not used
> to 
> programming that way. Making a function pure often requires reorganization
> of 
> how a task is broken up into data structures and functions.
> 
> […]

I can recommend a short period of working only with Haskell. And then a short
period working only with Prolog. Experience with Java and Python people trying
to get them to internalise the more declarative approach to software, shows
that leaving their programming languages of choice behind for a while is
important in improving their use of their languages of choice.

For Java people this is quite easy since there is Frege (an implementation of
Haskell on the JVM) and Clojure (a Lisp on the JVM). They do not have to leave
the comfort of their JVM to get away from Java. On return to Java, people's
use of Option, and lambda expressions, etc. was markedly different – and a
lot more declarative, making testing as well as comprehensibility of their
much better.

For Python people you have to play slightly different games, such as requiring
no use of for and while loops, since there is no pure declarative language on
the PVM – the computational model of the PVM actually makes declarative
programming quite hard, but it is possible, and it improves code
comprehensibility and testability.

The problem for people immersed in the C, and C++ world is internalising
declarative as a concept. I have tried, and failed a few times, as well as
succeeding some. As C++ evolves towards being more and more declarative, it
seems hard for the average C++ programmer to really move on from "old style
C++", despite all the literature on "modern C++". But as the standards
committee drag C++ along the increasingly declarative code route, things
change, albeit relatively slowly. 

Rust I feel has a pivotal role in all this. By emphasising the ML view on
mixed declarative and imperative programming, it has found an interesting
middle ground that seems to work very well. Many of the C programmers who
though C++ overcomplicated and not worth looking at, are taking to Rust and in
doing so leaving C behind.

On a personal level, I am now doing most of my programming in Rust rather than
D, but this is as much to do with the GStreamer community choosing Rust as the
replacement for C for GStreamer. But this is from a library implementers
perspective, rather than an application perspective – but the choice pushes
through. D (with GtkD and GStreamerD) is in many ways as good a choice as gtk-
rs and gstreeamer-rs for writing applications – except:

– documentation for gtk-rs and gstreamer-rs is better than for GtkD and
GStreamerD; and
– the standard Rust executor and futures system has been integrated into gtk-
rs, something not present in GtkD.
– GStreamer core developers have an obsessive fear of the word "garbage
collector".

I did a lightning talk at the GStreamer conference in Edinburgh a couple of
months ago, concluding that I think D (which about half the audience knew of)
is overall better than Rust for GTK+ and GStreamer applications, but
recognising that Rust is actually the replacement for C and C++ for GTK+ and
GStreamer applications. (Obviously Python has an ongoing role in all this as
well.)

I think D has missed the opportunity to get significant traction in the GTK+
and GStreamer milieus. :-(
 

-- 
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


Re: Blog post: What D got wrong

2018-12-17 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-12-15 at 19:53 +, Atila Neves via Digitalmars-d-announce
wrote:
> On Saturday, 15 December 2018 at 02:16:36 UTC, Nathan S. wrote:
> > On Thursday, 13 December 2018 at 10:14:45 UTC, Atila Neves 
> > wrote:
> > > My impression is that it's a consensus that it _should_, but 
> > > it's not going to happen due to breaking existing code.
> > 
> > I think it would be a bad idea for `immutable` because more 
> > often than not it would need to be turned off.
> 
> Not the case in Rust, not the case in how I write D. TBH it's not 
> such a big deal because something has to be typed, I just default 
> to const now anyway instead of auto. @safe and pure though...

Shouldn't be the case in Java either, since it is and always has been a single
assignment supporting language – it's just that they made mutable the default,
and trained people not use final.
-- 
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


Re: A brief survey of build tools, focused on D

2018-12-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-12-10 at 13:01 -0800, H. S. Teoh via Digitalmars-d-announce
wrote:
> 
[…]
> Wow.  Thanks for the writeup that convinces me that I don't need to
> waste time looking at Meson/Ninja.
[…]

The article is a personal opinion and that is fine. For me it is wrong. No
mention of SCons, nor that Gradle build C++ as well as for the JVM languages.
Some of the points about Meson are right, some wrong, but it is a personal
opinion and that is fine. 

I shall continue to use Meson and Ninja because they are way, way better than
Autotools (not mentioned but still used a lot) and better than SCons for many
use cases. But this is also a personal opinion.

-- 
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


OFFTOPIC Re: I've just released Vasaro

2018-12-08 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-12-07 at 20:47 +, Adam D. Ruppe via Digitalmars-d-announce
wrote:
> 
[…]
> Ah yes, I sometimes get tempted to add Cocoa support, but (aside 
> from one user contribution around 2012ish) I never get further 
> than hello world. I do now have a mac... but I hate it, so I have 
> no particular personal drive to make stuff work there.
> 
> But who knows, maybe eventually I'll get the code going there. 
> Indeed though, not right now.

If you don't want the macOS laptop and it is a post-2014 one, I'd be
interested. The MacBook Pro I have will only run El Capitan and Homebrew has
stopped supporting it with bottles, so it is now useless for development work
– or in my case testing that stuff developed on Debian actually also works on
macOS.

-- 
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


Re: A facebook group for D programmers

2018-09-17 Thread Russel Winder via Digitalmars-d-announce
And there is a Facebook group D Programming Language already.

On Sun, 2018-09-16 at 16:36 -0700, Steven Schveighoffer via
Digitalmars-d-announce wrote:
> On 9/16/18 2:51 PM, Peter Alexander wrote:
> > On Sunday, 16 September 2018 at 20:19:32 UTC, Murilo wrote:
> > > Hello everyone, I was so amazed with the D language that I
> > > created a 
> > > facebook group for us all to be connected and share information.
> > > It is 
> > > called "Programming in D", it has already 55 members. Please join
> > > the 
> > > group and invite everyone else to join it. That way we can show
> > > the 
> > > world how amazing the D language is.
> > 
> > Probably would be a good idea to link to the group. I couldn't find
> > it 
> > with search.
> 
> This seems pretty... spamish.
> 
> Apologies if that's not true, but the original message is so 
> fill-in-the-blank-with-target-topic that it's hard to take
> seriously. 
> Also the "Already has 55 members" seems weird too. Especially if
> it's 
> never been announced before.
> 
> -Steve
-- 
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


Re: Meson support for Mir and Lubeck

2018-09-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-09-10 at 07:25 +, 9il via Digitalmars-d-announce wrote:
[…]

> Interesting, maybe we can go forward with D specific libraries in 
> the future. Is there any D library that is used by application 
> packages?

Obvious example is Tilix and GtkD. They are compiled with a given version of
LDC (and hence Phobos and Druntime). Even if LDC is upgraded, as it just has
been, the Druntime and Phobos required by Tilix and GtkD are still there so
nothing breaks.

This doesn't mean it is all plain sailing: trying to use the updated LDC with
the not yet updated GtkD leads to two versions of Phobos seeming to be
required. Code still works though.

> Mir Optim can be easily used by other libraries and languages, 
> developers don't need to know D at all as well as depend on 
> DRuntime and D compiler.
> 
> The problem with Compiler/DRuntime version that it seems like 
> that if, for example one man released library A that is depend on 
> DRuntime v1, and other man released library B that depends on 
> DRuntime v2, how can I use them in my project together if this 
> DRuntimes are not compatible at ABI level? Maybe we can link 
> dynamically them together, but how GC will work then (in case of 
> non BetterC library)?

Pass. All I have evidence for is that I am compiling D code with LDC 1.11.0
which requires Phobos and Druntime 2.082 linking with GtkD which required
Phobos 2.078 and it all just works.

> If a solution of this issue exist, I would be very surprised if 
> it is easy to go solution. betterC libraries with fixed ABI, and 
> C/C++ API looks to me like a right way to develop D packages for 
> Debian.

Possibly, but much better to go with what is simplest and most efficacious for
the purpose in the context.  Libraries destined for use by many different
languages clearly need to use the C linkage of the moment.

It is mooted that some currently C implemented libraries may be reimplemented
in Rust, but will offer a C linkage as nothing else makes sense. 

[…]
> 
> We can choose other library prefix for packages instead of "mir", 
> say "mirmodule", so it would be libmirmodule-optim. Would this 
> work? I don't have resource to rename all mir and dependencies.

I wonder if this is all a storm in a teacup. As far as I can tell there is no
libmir, libmir-optim, libmir-dev, or libmir-optim-dev on Debian, so get in
there quick before something changes.

On Ubuntu the libraries for Mir the Canonical display server are libmiral… or
libmirclient… so there is no actual clash of package name as yet.


-- 
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


Re: Meson support for Mir and Lubeck

2018-09-10 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2018-09-09 at 21:22 +, 9il via Digitalmars-d-announce wrote:
> 
[…]
> Looks like that only betterC projects are good enough to become 
> Debian packages. Generally because of the have stable C ABI that 
> does not depend on D compiler version at all.

I do not follow the logic here at all. Any and all projects with a CMake,
Meson, SCons, even Make build be Debian packages. Many Debian packages depend
on specific versions of things like GCC runtime or LLVM. The Debian packaging
system allows for many versions of libraries to co-exists. Thus supporting
multiple versions of Druntime and Phobos is possible.
   
> 
[…]
> > I only worry about potential name clashes with Mir (the display 
> > server) in Ubuntu ^^
> 

This is going to be a naming problem. Debian has many of these sort of naming
clash and usually it is best for the smaller, newer project to accept that
they need to choose a non-clashing name. Recent example the Mu editor, but
there are many instances of this. D's Mir needs to choose a name that doesn't
clash with Canonical's Mir.


-- 
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


Re: Dub support was added to Meson

2018-09-06 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2018-08-16 at 22:44 +, Filipe Laíns via Digitalmars-d-announce
wrote:
[…]

Apologies for the delay in replying to this one.

> This is obviously bad. Your distro has a package manager, you 
> should use it, not create a separated language-specific one. If 

I'm afraid you are onto a lost cause on this one. The whole JVM-based milieu,
Ruby, Python, Go, D, Rust, etc. all have language specific repositories.
Debian, Fedora, etc. pick and choose which bits they choose to package based
on some algorithm almost, but not quite, totally unrelated to what is the
latest version. Operating system package managers are providing the operating
system, not the development tools and dependencies needed for software
development. 

Go, Rust, and indeed D, are going the route of static compilation as much
because operating system dependencies can never be guaranteed, and are often
wrong. It is not clear to me why Debian spend so much time packaging bits of
the Go universe that no-one uses even if the dependencies are in fact used.

On the other hand, having GtkD (and GStreamerD) packaged is great since there
are shared objects for use with D codes. There is nothing quite so depressing
as waiting for LDC or DMD to statically link to GtkD. So static linking is not
something I want. But waiting for Debian and Fedora to package things is often
like Waiting for Godot. Hence "build it yourself" becomes a bit of a must.

This is not a simple situation, and every individuals positions on it is
likely inconsistent and full of holes. 

> you are doing this locally, either but using the user's home of 
> by installing to /usr/local, I don't think it's much of a 
> problem. If you are implementing something like this at least do 
> it in a way that the package managing feature is optional. I 
> don't know if I'm being biased by being an Archlinux TU but from 
> my perspective, it's not something we should do, at the very 
> least globally.

It may be that Arch stays more up to date than Debian and Fedora (because it
is less centralised and more like Homebrew/Linuxbrew, but Debian (and Fedora?)
is where the bulk of Linux programs get executed, and so is the obvious place
to develop.
 
> Weirdly enough, I can reproduce. This was working when I wrote 
> the patch. I've opened an issue in the upstream.

Excellent.  I have a clone of Meson so can try stuff out on master/HEAD as
needed.

-- 
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


Re: Dub support was added to Meson

2018-08-15 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2018-08-14 at 17:51 +, Filipe Laíns via Digitalmars-d-announce
wrote:
[…]
> 
> Yeah, Meson is a build system, not a package manager. This 
> problem can be solved by simply creating a script that fetches 
> and builds de dependencies. When creating a script, you might 
> also want to compile the dependencies against the system's 
> default D compiler. This way, you won't have any issues.

That's the battle isn't it. Should the system that builds be the system that
also manages the packages for the build (cf. Dub, Cargo, Go, Mason), or should
the two be kept separate (cf. CMake, Meson, SCons, Make).

The debate has been had on the D mailing lists a number of times and at great
length. But in the end D, Rust, and Go are going with a single system for
everything.

Building for Debian/Fedora/etc. can be seen as separate from building a
project independent of platform. Whilst build-only clearly works for
Debian/Fedora/etc. builds, and possibly for big corporate builds, for small
projects the all-in-one approach is clearly winning the battle for hearts and
minds.  

[…]
> It uses 'dub describe' to find the files, this also allows us to 
> check the compiler. Meson won't even let you try to compile the 
> project if there's an compiler mismatch.

I am not sure how "dub describe" tells you which compiler is being used, it
always says "compiler": "dmd" on my projects even though I only use ldc2 for
build.

[…]
> I mean, you can do this but as you said, it's not recommended.

Certainly it is not recommended for Meson builds but I see no reason why. It
is just duplicating information that is held on the filestore, and DRY is
supposed to be a thing in computing. Convention over configuration really
makes things a lot easier. But I guess this debate would turn into a flame war
of competing prejudices, so probably best left alone. 

[…]
> Dub is implemented this way for a reason. We really *shouldn't* 
> use dynamic libraries, at least for now.

Maybe then Dub should be better able to handle shared objects. Whilst the
whole static linking vs. shared objects is another topic that descends into
flame wars of prejudice, the de facto standard tool should not really be
taking sides in the war but should support both sides. Dub supports shared
objects as dependencies, but just fails to be able to build them.

-- 
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


Re: Dub support was added to Meson

2018-08-13 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-08-13 at 14:33 +, Matthias Klumpp via Digitalmars-d-announce
wrote:
[…]
> This is intentional, see this comment from Jussi: 
> https://github.com/mesonbuild/meson/pull/3592#issuecomment-390421754

I am not entirely sure I agree with everything there, but he is BDFL of the
project so his view wins. 

> Unfortunately, this makes the dub feature almost useless for 
> Linux distro integration.
> However, I hope we might be able to implement reading dub.json 
> files that are locally installed and incorporate D sources from 
> the dependency into the regular Meson build process.

I am rapidly heading this route for SCons: instead of using Dub to create the
libraries just use it to get the sources and then compile the sources as a
sub-project. However I still prefer having a Meson build for the library and
building that way. If however there is a way of using dub.sdl or dub.json that
would be interesting.

> This would mean that Meson's dlang plugin would have to implement 
> quite a bit of dub and dub.json parsing, which is some effort.
> The benefit would be the creation of a near-seamless bridge 
> between the dub and Meson worlds (you'd only have to locally 
> install a dub package), that is also useful for Linux 
> distribution packaging.

Perhaps there is a route whereby there can be a separate Python package to do
this that both Meson and SCons can use? Otherwise it risks there being
implementation of the same code for Meson and SCons separately.

[…]
> Jup, deterministic source lists are useful for split-building 
> stuff efficiently. And globbing sources is possible with Meson, 
> but highly discouraged (and even looks ugly).

I am not entirely convinced explicit manual lists are better, nor are they
required for consistent builds. If the source files structure changes you have
to create a new build anyway.

What is the ugly globbing way you know – I'm wondering if it better than the
hack I have. 

[…]
> At the moment, I think for a final project, adding Meson files to 
> dependencies still is the better way. However, for quickly 
> testing out things and for building something locally, the new 
> dub support is quite valuable.
> Also, we can expand it in future, this is a first step :-)

I get the feeling Meson Rust/Cargo support is easier and better than D/Dub
support, even though D seems to get more publicity in the Meson documentation.

I think a really good way forward for Meson (and analogously SCons) would be
to have the Dub dub.{json,sdl} file usable to create (and deploy if using
shared objects) a Meson (Scons) build of the dependency and then building the
project based on the created dependencies.

-- 
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


Re: Dub support was added to Meson

2018-08-10 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-08-04 at 16:07 +, Filipe Laíns via Digitalmars-d-announce
wrote:
> 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.

Sadly not in Meson 0.47.1 is a new release due soon?

> First, you need to fetch and build the dependency.
> 
>dub fetch vibe-d
>dub build vibe-d

This feels a little unsatisfactory. Dub (and soon SCons I hope) builds handle
getting the dependency as well as building it and thence linking the project
to it. Meson both depends on the dub executable and yet isn't doing the
getting, it is assuming already got.

Of course Meson relies on all dependencies being present at build
specification time, so nothing inconsistent, it just seems a wee bit
incomplete.

I haven't finished reading the Meson source to find out which Dub built
archive is used in the Meson build but if it is the one in
~/.dub/packages/-/ then stuff can go wrong since it
is the result of the last build. In order to get the build with the specific
compiler on the specific platform you have to delve into
~/.dub/packages/-//.dub/ and know the Dub naming
strategy. For SCons I am having problems with this because of the extra stuff
in the directory name.

> Then you just need to specify Dub as the dependency method.
> 
>vibed_dep = dependency('vibe-d', method: 'dub')

I have been getting projects such as Unit-Threaded, DInotify, TinyEndian, and
D_YAML to have Meson builds so as to create shared libraries prior to using
pkg-config to handle D project being dependent on these libraries. It's
working nicely (for me anyway) except Dub uses GitHub tags for versioning and
Meson requires version numbers in the meson.build file. This duplication is
getting quite annoying for all concerned. As is the Meson requirement to list
all source files, rather than have a convention over configuration approach as
Dub does – SCons has a different approach but still avoids explicit source
lists. I can get round it with Meson, but I am informed it is naughty and
should not be done.

These builds create shared objects and allow for dynamic linking. Using Dub
built archives means static linking. Unless Meson somehow manages to get
shared objects out of the Dub build.

Unless Dub can generate shared objects, having the dependencies build locally
and creating pkg-config files actually seems a better way that accessing Dub
builds.

But I may be missing something! 
 
[…]
-- 
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


Re: Dub support was added to Meson

2018-08-04 Thread Russel Winder via Digitalmars-d-announce
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


Re: LDC 1.10.0

2018-06-21 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2018-06-21 at 16:01 +, kinke via Digitalmars-d-announce wrote:
> 
[…]
> In case you haven't figured it out by now: it already is on a 
> branch in the official repo, `merge-2.081`.

Found indeed. And built.

dub run --compiler=$HOME/BuildArea/LDC/bin/ldc2

does the business. Steve's fix to Phobos works. I don't get a silent thread
termination in Phobos now.


-- 
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


Re: LDC 1.10.0

2018-06-21 Thread Russel Winder via Digitalmars-d-announce

OK, I am now tracking merge-2.081 and it builds for me.

Now to see if Steve's fix to Phobos works for me. 

-- 
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


Re: LDC 1.10.0

2018-06-21 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2018-06-21 at 09:02 +, Joakim via Digitalmars-d-announce wrote:
> On Wednesday, 20 June 2018 at 09:11:32 UTC, Russel Winder wrote:
> > Great to see LDC being as up to date with DMD as possible 
> > quickly.
> > 
> > Sadly due to a Phobos bug, I need D 2.081.0 :-(
> 
> It is very easy to build ldc from source, I do it all the time, 
> even on my Android tablet or smartphone:
> 
> https://wiki.dlang.org/Building_LDC_from_source

In the past I have been known to work with master head or release branch as a
part of helping as a bit of a tester. However, there were issues, long story,
so I started relying on packaged version. I guess I should try being a tester
again.

> If you're waiting on a Phobos fix, you can always backport it to 
> LDC 1.10 and build it yourself.
> 
> You can also try out the WIP pull for the next release, available 
> on its own branch, particularly if you're on linux where it's 
> mostly working:
> 
> https://github.com/ldc-developers/ldc/pull/2752

I could be convinced to try this out once it gets committed into a branch.

I'll re-clone the repository as a start point.

-- 
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


Re: LDC 1.10.0

2018-06-20 Thread Russel Winder via Digitalmars-d-announce
Great to see LDC being as up to date with DMD as possible quickly.

Sadly due to a Phobos bug, I need D 2.081.0 :-(

Hopefully the Debian, Fedora, Homebrew, and Linuxbrew packagers get LDC 1.10.0
out quickly. 

On Tue, 2018-06-19 at 22:10 +, kinke via Digitalmars-d-announce wrote:
> Hi everyone,
> 
> on behalf of the LDC team, I'm glad to announce LDC 1.10. The 
> highlights of this version in a nutshell:
> 
> * Based on D 2.080.1.
> * Win64: Breaking ABI change by passing vectors efficiently in 
> registers.
> * Config file extensions for cross-compilation.
> * Support for DragonFly BSD.
> * Various fixes, most notably wrt. exception stack traces on 
> Linux.
> 
> Full release log and downloads: 
> https://github.com/ldc-developers/ldc/releases/tag/v1.10.0
> 
> Thanks to all contributors!
-- 
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


Re: SecureD moving to GitLab

2018-06-09 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-06-09 at 04:03 -0400, Nick Sabalausky (Abscissa) via Digitalmars-
d-announce wrote:
> 
[…]
> Maybe naive, maybe not, but my policy is that: Any hour of any day an 
> employer claims ***ANY*** influence over, must be paid for ($$$) by said 
> employer when attempting to make ANY claim on that hour of my life. Period.

Employees involved in intellectual endeavour need to be beholden to the
employer at all times since the employee might have ideas useful to the
employer at any time. This is a complicated issue and extreme positions are
not helpful.  But everyone to their own.

> There are already far too many 
> would-be-slavedrivers^H^H^H^H^H^H^employers who attempt to stake claim 
> to the hours of a human being's life WHICH THEY DO *NOT* COMPENSATE FOR.

This is why permissive software licences were invented, so people would do
lots of work on FOSS and then companies could use it for their own money
making purposes without any thought of paying anyone anything.

> If an employer *does not* pay me for an hour of my life which they 
> *claim control over*, then the employer WILL NOT BE MY EMPLOYER. Period.

Salaries are like that, employers own you 24/7.

> If others held themselves to the same basic standards, then nobody in 
> the world would ever be slave^H^H^H^H^Hpersonal-property to a business 
> which makes claim to a human life without accepted compensation.

It's all about supply and demand in this currently capitalist world. You can
bet there will be someone who will do it even if you won't. How else do the
"sweat shops" work.

Openness, compromise, accommodation, and collaboration work best in what is a
fundamentally combative, us vs them economic system.

-- 
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


Re: SecureD moving to GitLab

2018-06-09 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-06-08 at 22:47 -0700, Walter Bright via Digitalmars-d-announce
wrote:
> 
[…]
> Oh, employers do try that. I would negotiate what is mine and what is the 
> company's, before signing. In particular, I'd disclose all projects I'd
> worked 
> on before, and get a specific acknowledgement that those were not the
> company's. 
> When I'd moonlight, before I'd do so, I'd describe the project on a piece
> of 
> paper and get acknowledgement from the company that it is not their project.

Not only should employers try that, they must do that or fail in their
responsibilities to the shareholders.

But that is the point, all the employer needs to know is that any software you
do outside the company does not compete with or  "steal" stuff from inside the
company. Openness and straightforwardness is all that is required so all
parties know what is going on. 
   
> And I never had any trouble about it.

Any potential employer not behaving reasonably, is an employer not to work
for.

> (These days, life is a bit simpler. One thing I like about Github is the 
> software is all date stamped, so I could, for instance, prove I wrote it
> before 
> joining company X.)

And of course, non-GPL and LGPL software on GItHub, GitLab, BitBucket,
Launchpad, are there fore the taking: why pay people when you can use their
work free of charge. ;-)

-- 
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


Re: GitHub could be acquired by Microsoft

2018-06-09 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-06-08 at 15:06 -0700, Walter Bright via Digitalmars-d-announce
wrote:
> On 6/8/2018 3:02 PM, Brad Roberts wrote:
> > Essentially (if not actually) everything on github is available through
> > their 
> > api's.  No need for scraping or other heroics to gather it.
> 
> That's good to know! The situation I was concerned with is it going dark all
> of 
> a sudden.
[…]

Good job Microsoft bought GitHub then: GitHub was likely running out of cash,
so needed a quick sale to avoid it going dark very suddenly.

-- 
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


Re: Beta 2.080.1

2018-06-09 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-06-08 at 16:28 -0400, Steven Schveighoffer via Digitalmars-d-
announce wrote:
[…]
> 
> If not 2.080.2, I will target master for 2.081. Seems like it was pretty 
> much good to go, but didn't make the cutoff.

I'll just go do some more Rust stuff whilst waiting. :-)
 
-- 
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


Re: Beta 2.080.1

2018-06-08 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-06-04 at 17:14 +0100, Russel Winder wrote:
> On Mon, 2018-06-04 at 11:14 -0400, Steven Schveighoffer via
> […]
> 
> > I just submitted a PR to fix
> > https://issues.dlang.org/show_bug.cgi?id=18934
> > 
> > I used stable. I'm hoping it could get in for this release.
> > 
> > https://github.com/dlang/phobos/pull/6544
> > 
> > -Steve
> 
> So am I. 


Looks like this didn't get into 2.080.1. When is 2.080.2 being released?

-- 
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


Re: GitHub could be acquired by Microsoft

2018-06-07 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2018-06-07 at 10:17 -0700, H. S. Teoh via Digitalmars-d-announce
wrote:
> […]
> 
> Exactly!!!  Git was built precisely for decentralized, distributed
> development.  Anyone should be (and is, if they bothered to put just a
> tiny amount of effort into it) able to set up a git server and send the
> URL to prospective collaborators.  Anyone is free to clone the git repo
> and redistribute that clone to anyone else.  Anyone can create new
> commits in a local clone and send the URL to another collaborator who
> can pull the commits.  It should never have become the tool to build
> walled gardens that inhibit this free sharing of code.
> 

I think there is an interesting tension between using a DVCS as a DVCS and no
central resource, and thus no mainline version, and using a DVCS in
combination with a central resource.  In the latter category the central
resource may just be the repository acting as the mainline, or, as with
GitHub, GitLab, Launchpad, the central resource provides sharing and reviewing
support.

Very few organisations, except perhaps those that use Fossil, actually use
DVCS as a DVCS. Everyone seems to want a public mainline version: the
repository that represents the official state of the project. It seems the
world is not capable of working with a DVCS system that does not even support
"eventually consistent". Perhaps because of lack of trying or perhaps because
the idea of the mainline version of a project is important to projects.

In the past Gnome, Debian, GStreamer, and many others have had a central
mainline Git repository and everything was handled as DVCS, with emailed
patches. They tended not to support using remotes and merges via that route,
not entirely sure why. GitHub and GitLab supported forking, issues, pull
requests, and CI. So many people have found this useful. Not just for having
ready made CI on PRs, but because there was a central place that lots of
projects were at, there was lots of serendipitous contribution. Gnome, Debian,
and GStreamer are moving to private GitLab instances. It seems the use of a
bare Git repository is not as appealing to these projects as having the
support of a centralised system.

I think that whilst there are many technical reasons for having an element of
process support at the mainline location favouring the GitHubs and GitLabs of
this Gitty world, a lot of it is about the people and the social system: there
is a sense of belonging, a sense of accessibility, and being able to
contribute more easily.

One of the aspects of the total DVCS is that it can exclude, it is in itself a
walled garden, you have to be in the clique to even know the activity is
happening.

All of this is not just technical, it is socio-technical. 
 
-- 
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


Re: SecureD moving to GitLab

2018-06-06 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2018-06-05 at 13:43 -0600, Jonathan M Davis via Digitalmars-d-
announce wrote:
> […]
> 
> Fortunately, it's not usually a problem, but it's something that any
> programmer who writes code in their free time has to be aware of. In
> most
> cases, if you have a reasonable employer, you can do whatever
> programming
> you want in your free time so long as it's not related to what you
> work on
> at work. But it is occasionally a problem.

It is worth noting that any employer who understands software
development and is involved in software development will write into the
contract of employment that all software created by an employee at any
time is the property of the employer. However, they must also have a
system for explicitly allowing employees to work on code in their own
time (or even on company time) that is then contributed under some
licence or other. The point here is that the employee effectively has
first refusal on all software created.

This is of course in the jurisdiction of England & Wales, but Scotland
is no different really. I'll bet this is true in the various
jurisdictions of the USA.

-- 
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


Re: Beta 2.080.1

2018-06-04 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-06-04 at 11:14 -0400, Steven Schveighoffer via
[…]

> I just submitted a PR to fix
> https://issues.dlang.org/show_bug.cgi?id=18934
> 
> I used stable. I'm hoping it could get in for this release.
> 
> https://github.com/dlang/phobos/pull/6544
> 
> -Steve

So am I. 

-- 
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


Re: serialport v1.0.0

2018-05-14 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2018-05-13 at 12:05 -0600, Jonathan M Davis via Digitalmars-d-announce 
wrote:
[…]
> 
> Really? If the consensus is that it should go in, then okay, but I don't
> think that I've ever seen a standard library with anything like
> functionality for talking to serial ports. And what would having it be in
> Phobos buy you over just grabbing it from code.dlang.org?

Python is a batteries included distribution.

PySerial and PySerial-AsyncIO  are packages in PyPI, not in the distibution,
and sometime packaged in OS package repositories..

-- 
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


Re: State of D 2018 Survey

2018-03-05 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2018-03-04 at 21:12 +, Kagamin via Digitalmars-d-announce
wrote:
> On Friday, 2 March 2018 at 12:01:33 UTC, Russel Winder wrote:
> > So having D2.999 is fine per se, but advertises a lack of 
> > change and a lack of ambition since the language name is D not 
> > D2.
> 
> D just doesn't follow semver. If it did, we would have D79 now, 
> nothing else even comes close to this. And I suspect it won't 
> adopt semver because major number would be so ridiculously high 
> and will advertize something else.

I do not see your reasoning here. Has the core D computational model
changed? I think not. Does D issue bugfix releases? Occasionally. Thus:

2.79.0

seems like a perfectly reasonable semantic version number for D.

> > Fortran, C++, and Java show an obsessive adherence to backward 
> > compatibility and yet they increase their major numbers to give 
> > the appearance at least of forward progress.
> 
> C++ and Fortran don't have version numbers, those are brand 
> numbers.

Actually no, they are standards version numbers. Once you have an ISO
standard for a programming language semantic versioning is impossible,
but the standard number is the version number.

On the other hand this is trivia and so shouldn't become a Big Issue™.

-- 
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


Re: State of D 2018 Survey

2018-03-03 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-03-03 at 16:06 +, Dmitry Olshansky via Digitalmars-d-
announce wrote:
> On Saturday, 3 March 2018 at 15:52:02 UTC, Russel Winder wrote:
> > […]
> > 
> > http://www.intropsych.com/ch06_memory/magical_number_seven.html
> 
> Won’t load for me(

How annoying. Definitely works for me as they say.

It's a 2007 chapter from an introduction to psychology, the first
sensible link that came up via a DuckDuckGo search. There are a variety
of other places to look. Here's another.

https://www.simplypsychology.org/short-term-memory.html


> Anyhow far as I can tell it is a measure of how many entities 
> simultaniously you can hold in your attention, such objects in a 
> picture frame.

It's a 1956 paper by Miller that claims 7 is the magic number for short
term memory, the number of chunks of stuff you can keep for a certain
period. A chunk is not a defined thing such as characters or words, but
they are examples.  I am not sure what the experimental status is of
this "theory", but I suspect no-one has disproved it as yet.

> This doesn’t represent long-term memory or other capacities, 
> which is likely the case here.

Exactly.


-- 
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


Re: State of D 2018 Survey

2018-03-03 Thread Russel Winder via Digitalmars-d-announce
On Sat, 2018-03-03 at 13:51 +, Dmitry Olshansky via Digitalmars-d-
announce wrote:
> […]
> 
> O.T.: Which is a well known number when it comes to cognition. 
> It’s usually 7+-2.

A number that is often misunderstood, and misused. As in this case.

http://www.intropsych.com/ch06_memory/magical_number_seven.html

-- 
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


Re: [OFF TOPIC] State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-03-02 at 12:16 +, psychoticRabbit via Digitalmars-d-
announce wrote:
> On Friday, 2 March 2018 at 12:02:43 UTC, Russel Winder wrote:
> > On Fri, 2018-03-02 at 11:52 +, Russel Winder wrote:
> > > […]
> > > report science, does make science dodgy. But that stray off 
> > > topic for
> > 
> > […]
> > 
> > s/does/does not/
> > 
> > Obviously. :-)
> 
> mmm...freudian slip??

:-)

> I study science...and what's being taught to us .. is dodgy.

So, one of:

– the teaching is bad;
– the learner is not up to it; or
– both.

Science, in and of itself, cannot be dodgy.

Yes there are debates to be had, cf. Popper, Kuhn, etc. but the
foundation of science is hypotheses, experimentation, and
reproducibility. It can be done badly or well by people, but it is not
a dodgy thing.

> and anyway, since when do D forum discussion stay on topic?

Usually, but then an [OFF-TOPIC] marker gets added in the thread when a
drift occurs.

> C ruleZ!
> 
> ..and D does too ;-)
> 
> ... and I don't want to hear about Rust.
> So lets agree to never, ever mention that word...ever again.

Perhaps you do not, but Rust, like Go, is getting traction in the world
out there. Like COBOL, C will always be there, but its use will
diminish rapidly.

-- 
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


Re: State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-03-02 at 11:52 +, Russel Winder wrote:
> […]
> report science, does make science dodgy. But that stray off topic for
[…]

s/does/does not/

Obviously. :-)

-- 
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


Re: State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-03-02 at 04:00 -0700, Jonathan M Davis via Digitalmars-d-
announce wrote:
> […]
> 
> In any case, I expect that anyone who wants D3 is going to have a
> very hard
> time convincing Walter and Andrei that such large breaking changes
> would be
> worth it at this point.

I am happy to accept now is not the time, but to say there will be no
D3 is probably as bad a position as to say D3 tomorrow please, and D4
the next day.

Of course the Linux numbering 3 → 4 was fatuous, no architectural or
serious breaking change, just a though that the minor number was
getting too big.

So having D2.999 is fine per se, but advertises a lack of change and a
lack of ambition since the language name is D not D2. Fortran, C++, and
Java show an obsessive adherence to backward compatibility and yet they
increase their major numbers to give the appearance at least of forward
progress.

There is a balance to be had, but I believe keeping D3 as a formal
agenda item is a positive thing for the traction of D. Perhaps, of
course we should be talking about D 2.x and D 3.0 and remove the D1,
D2, etc. from the debate.

-- 
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


Re: State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-03-02 at 11:16 +, psychoticRabbit via Digitalmars-d-
announce wrote:
> On Friday, 2 March 2018 at 10:21:05 UTC, Russel Winder wrote:
> > 
> > ...continue with C in the face of overwhelming evidence
> > it is the wrong thing to do.
> 
> yeah, the health fanatics who promote their crap to goverments 
> and insurance agencies, use very similar arguments about sugar, 
> salt, alchohol, this and that
> 
> when really, it's all about moderation, not prohibition (or 
> increased taxes on things people say are bad).

You stick with your buffer overruns, I'll do my applications in D and
Rust.

> and science is so dodgy these days, that even scientific evidence 
> requires evidence.

Bollocks. Just because a certain section of USA society, and sadly some
sections of UK society, either can't do science, or choose to badly
report science, does make science dodgy. But that stray off topic for
this list into the realms of philosophy of science.

> c rules!

If you want buffer overruns certainly.

-- 
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


Re: State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-03-02 at 02:35 +, Meta via Digitalmars-d-announce
wrote:
> […]
> D1 -> D2 nearly killed D (can't remember which, but it was either 
> Walter or Andrei that have said this on multiple occasions). A D2 
> -> D3 transition might generate a lot of publicity if done very 
> carefully, but more than likely it would just put the nails in 
> the coffin for good and destroy all the momentum D has built up 
> over the past 3 years (I feel like 2015 was a big turning point 
> where D finally got back on peoples' radars).

And Java 5 nearly killed Java, as did Java 8 and Java 9. OK so there
was more internecine warfare in the D1 → D2 thing, but hopefully the D2
→ D3 think will not only happen, it will happen relatively soon.

Dx → Dy is the time for important breaking changes. There appear to be
an increasing number of things annoying people about D2, ergo the
pressure for D3 is building. NOT evolving from D2 to D3 is what will
definitely kill D.

-- 
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


Re: State of D 2018 Survey

2018-03-02 Thread Russel Winder via Digitalmars-d-announce
Whilst we are espousing opinions…

On Fri, 2018-03-02 at 08:02 +, Paulo Pinto via Digitalmars-d-
announce wrote:
> On Friday, 2 March 2018 at 04:38:24 UTC, psychoticRabbit wrote:
> > […]
> > 
> > You can write pretty safe code in C these days, without too 
> > much trouble. We have the tooling and the knowledge to make 
> > that happen.. developed over decades - and both keep getting 
> > better, because the language is not subjected to a constant and 
> > frequent release cycle.

You can write safe code in assembly language and even machine code, but
do you want to? The same applies to C.

> > Ironically, the demands on programmers to adapt to constant 
> > change, is actually making applications less safe. - and least, 
> > that's my thesis ;-)
> > 
> > The real problem with using C these days (in some areas), is 
> > more to do with its limited abstraction power, not its lack of 
> > safety.

The problem with C these days is that people still use it when they
really should not. C has it's place, and writing applications is not
that place.

> > And also C is frowned upon (and C++ too for that matter), cause 
> > most programmers are so lazy these days, and don't want to 
> > write code - but prefer to just 'link algorithms' that someone 
> > else wrote.

Wrong, wrong, wrong. Those people using C these days either have to use
it because a modern language can't yet target their platform, or they
are too lazy to change their toolchain and continue with C in the face
of overwhelming evidence it is the wrong thing to do.

> > […]
> 
> There are only two reasons we are stuck with C, until we get to 
> radically change computer architectures, UNIX like OSes, and 
> embedded developers that won't use anything else even at point 
> gun.
> 

C is a portable assembly language, it is not really a high level
language. There are those who will not change and will use C till they
drop dead. That is their problem.

There are those who use C because the only other option is assembly
language, so they make the right decision. This is an indicator that
high-level language toolchain manufacturers have failed to port to
their platform. I'll wager there are still a lot of 8051s out there.
I'll also wager the C++ compilers for that target do not realise C++,
but a subset that is worse than using C. Even after 14 years of
improvement.

It is going to be interesting what happens when Rust begins to have to
toolchains to deal with microcontrollers. Hopefully though ARM cores
dominate now, especially given the silicon area is reputedly smaller
than 8051. I've been out of the smartcard arena for over a decade now,
and yet I bet it is all still very much the same.

> […]
> 
-- 
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


Re: State of D 2018 Survey

2018-03-01 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2018-02-28 at 13:41 +, Mike Parker via Digitalmars-d-
announce wrote:
> About a month ago, Sebastian Wilzbach sent an email out to a few 
> of the core D folks asking for feedback on a survey he had put 
> together. He thought it would be useful for the Foundation to use 
> in order to make decisions about where to expend development 
> efforts. Eventually Andrei gave his stamp of approval, the survey 
> questions were tweaked, and then it was ready to roll.
> 
> Of course I would love for you to read my blog post announcing 
> it, but if you want to skip the prose and go straight to the good 
> stuff, here's the survey link:
> 
> https://seb134.typeform.com/to/H1GTak
> 

All the 1 to 5 scale questions have the label a over each of the five
options so it is not entirely obvious what to choose.

Firefox 58.0.1 on Debian Sid.
 
-- 
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


Re: The Expressive C++17 Coding Challenge in D

2018-02-14 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2018-02-14 at 13:21 +, Seb via Digitalmars-d-announce
wrote:
> On Wednesday, 14 February 2018 at 09:42:47 UTC, Russel Winder 
> wrote:
> > Seb,
> > 
> > I believe this blog post would make a great article for 
> > Overload or CVu.
> 
> Cool idea, but I'm not so familiar with these. What can/should I 
> do to make this happen?
> We can also talk in private (seb [at] wilzba [dot] ch).

For the email list record, CVu and Overload are the ACCU journals.
Historically Overload has been a C++ language, tools, and techniques
vehicle put is now adding detailed technical articles on other
languages. CVu has anything else, including some technical stuff.

https://accu.org/index.php/journal

Seb and I have started a personal email exchange and I am getting the
editors of said journals involved.
 
-- 
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


Re: The Expressive C++17 Coding Challenge in D

2018-02-14 Thread Russel Winder via Digitalmars-d-announce
Seb,

I believe this blog post would make a great article for Overload or
CVu.

On Tue, 2018-02-13 at 23:35 +, Seb via Digitalmars-d-announce
wrote:
> Someone revived the Expressive C++17 Coding Challenge thread 
> today and I thought this is an excellent opportunity to revive my 
> blog and finally write an article showing why I like D so much:
> 
> https://seb.wilzba.ch/b/2018/02/the-expressive-c17-coding-challenge-i
> n-d
> 
> It's mostly targeted at beginners as I explain many basic D 
> features, but maybe it's helpful for beginners looking into D.
-- 
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


Re: dxml 0.2.0 released

2018-02-13 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-02-12 at 14:54 +, rikki cattermole via Digitalmars-d-
announce wrote:
> […]
> 
> Personally I find J.M.D. arguments quite reasonable for a third-
> party 
> library, since yes it does cover 90% of the use cases.

The problem is that std.xml needs removing to make it clear there is
no good XML package in Phobos. The people will go looking in the Dub
repository.

-- 
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


Re: dxml 0.1.0 released

2018-02-11 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2018-02-11 at 03:34 -0700, Jonathan M Davis via Digitalmars-d-
announce wrote:
> 
[…]
> Given how strings work in D, parsing is something that we should
> easily be
> able to do faster than other languages - or at least, other languages
> typically have to write much less idiomatic code and go to a lot more
> effort
> to reach the speeds that we can easily reach with idiomatic D code.
> So, in
> general, IMHO, parsers are one of those things that we should
> typically be
> writing natively.

Works for me, and given you have given the project a massive kick
start, hopefully others can get stuck in and Phobos can do a swap of
what was with what is.

> That being said, if someone really wants full DTD support, I have no
> problem
> sending them off to deal with bindings to C/C++ libraries, since I
> for one
> am not willing to put in the time or effort to support that part of
> the XML
> spec, since it complicates things considerably while adding nothing
> positive
> IMHO. I'm sure that a D solution could compete excellently with a
> C/C++
> solution, but it's sure not worth my time and effort, and no one else
> has
> stepped up to implement anything along those lines.

I am no longer doing XML stuff myself, but a couple of years ago DTDs
were "dead" and everyone was using XML Schemas.

> Also, we're not about to put bindings to a C/C++ library for XML in
> Phobos
> (it's already been argued quite a bit that doing so with curl was a
> big
> mistake), so if we want to replace std.xml, that calls for writing a
> replacement in D.

True, and entirely reasonable. It is why lxml is only available via
download or far more usually via PyPI.

D having a really good XML (and XSLT) support in it's standard library,
and removing the crud, would be one up on what Python has done.

-- 
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


Re: dxml 0.1.0 released

2018-02-11 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2018-02-09 at 13:47 -0800, H. S. Teoh via Digitalmars-d-
announce wrote:
> On Fri, Feb 09, 2018 at 02:15:33PM -0700, Jonathan M Davis via
> Digitalmars-d-announce wrote:
> > I have multiple projects that need an XML parser, and
> > std_experimental_xml is clearly going nowhere, with the guy who
> > wrote
> > it having disappeared into the ether, so I decided to break down
> > and
> > write one. I've kind of wanted to for years, but I didn't want to
> > spend the time on it. However, sometime last year I finally decided
> > that I had to, and it's been what I've been working on in my free
> > time
> > for a while now. And it's finally reached the point when it makes
> > sense to release it - hence this post.
> 
> Hooray!  Finally, a glimmer of hope for XML parsing in D!

I wonder why no-one has tried using DStep to create a D binding for
libxml2 and libxslt.

Whilst Python has a SAX and DOM parsing capability, well three
different ones in the standard library, anyone doing serious XML work
in Python uses lxml which is just a Python binding to libxml2 and
libxslt.

If Python people have given up on the XML stuff in it's standard
library and use a binding to a well known and distributed one, is this
a good path for D?
 

-- 
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


Re: D User Survey

2017-12-11 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2017-12-10 at 04:02 -0500, Nick Sabalausky (Abscissa) via
Digitalmars-d-announce wrote:
> On 12/09/2017 07:58 AM, wobbles wrote:
> > On Thursday, 7 December 2017 at 14:31:01 UTC, Chris wrote:
> >   I didn't know Ireland was so
> > > unknown, unless, of course, I'm supposed to choose "Great Britain".
> > 
> > I also hated myself for clicking Great Britain :-)
> 
> As an outsider, I'm curious about this. My (perhaps innacurate?) 
> understanding was that "Great Britain" was more a geographical term 
> referring to everything on the islands rather than a political boundary 
> (as opposed to "UK" which is purely a political concept and includes 
> some, but not all, of the countries on the same islands). Is that not 
> enitrely correct? Or is that exactly the the part that's uncomfortable - 
> that it's a "Country" field which lacks the actual country name and only 
> offers a geographic collection in its place?

The UK is the United Kingdom of Great Britain and Northern Ireland. Well for
now, let's see what happens come 2019-03-30.

Great Britiain is technically the geographical thing, the island and
surrounding islands that are politically Scotland, Wales, and England. Wales
was effectively annexed by England long ago. Scotland joined with England
via the Act of Union 1707.

Northern Ireland is the result of the termination of the English occupation
of Ireland. The 1921 separation of Ireland that allowed the Irish Free State
to form in 1922. Basically it separated the unionists and the republicans so
the republicans could get on with life as a self determining political
entity.

Many international organisations have confused everyone about the labels,
UK, Great Britain, GB, GBR, especially in Internet circles and in sport.

Wikipedia is mostly not entirely wrong on this stuff.

-- 
Russel.
=
Dr Russel Winder t:+44 20 7585 2200   voip:sip:
russel.win...@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   xmpp:rus...@winder.org.uk
London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder

signature.asc
Description: This is a digitally signed message part


[OFF TOPIC] Re: DMD now has colorized syntax highlighting in error messages

2017-05-14 Thread Russel Winder via Digitalmars-d-announce
On Sun, 2017-05-14 at 20:09 -0700, Walter Bright via Digitalmars-d-
announce wrote:
> On 5/14/2017 7:44 PM, ketmar wrote:
> > sorry for being rude,
> 
> Then please do not post rude comments. We expect professional decorum
> here.

But in politics lying and being rude is completely the norm. Also, as
yet, software development is not a profession. I think "respect for
others" and "empathy" are better lines to take. 

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: DMD now has colorized syntax highlighting in error messages

2017-05-14 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-05-15 at 05:44 +0300, ketmar via Digitalmars-d-announce
wrote:
> 
[…]
> sorry for being rude, but this is exactly the example of things
> programmers 
> like to write: fun, quite easy, and absolutely useless. most of the
> time it 
> will be filtered away by ide/editor, and otherwise it is *harder* to
> read, 
> 'cause it will almost certainly not match editor's syntax coloring
> settings, 
> so reader will have to mentally strip the colors first.

Also the default colours chosen by the developer usually work well for
the them and their (and if you are lucky reviewers) terminal settings
and are totally useless for a huge section of using audience (most of
whom remain silent for various reasons). Take Git for example. I end up
having to run:

git … | more

to get rid of the colours. The default colours might work for the Git
developers but fail dismally for me. I cannot be bothered to get into
the detail of how to change the Git colouring so I use more to get rid
of it. 

I like having colours, for exactly the same reason colouring is good in
source code editing, they can apply semantic (albeit often syntactic)
coding, but all too often the colour choices are dreadful and too
difficult to change. Hence all too often I have to:

emacs --color=no

I still like colouring, it is just that mostly it is done for a given
terminal setting, and/or in a way too difficult to change locally.

> while much harder task -- showing which exactly template failed in
> template 
> constraint -- is very hard to implement (i tried it, i know it), but
> will 
> immediately benefit *anyone*, and will be really useful.
> 
> i'm not trying to say that you should drop the things you like to
> work on, 
> and switch to the things i like, of course. but this patch, IMO,
> doesn't 
> deserve a dedicated NG post.
> 
> sorry again, i'm frustrated by dmd inability to generate valid .o
> file from 
> completely valid source, so can be harsh today.
-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-11 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-04-10 at 12:41 +, Matthias Klumpp via Digitalmars-d-
announce wrote:
> 
[…]
> I am not buying the necessity of not-splitbuilding for 
> optimizations yet. If that would be the case, how do 
> optimizations work with projects using GCC/Clang where 
> splitbuilding is the default and often only option (like Mesa, 
> Linux, lots of scientific stuff).
[…]

It seems that unit-threaded cannot be built module at a time due to
various reflection bits, the only solution is all source at once.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-04-10 at 17:56 +, Matthias Klumpp via Digitalmars-d-
announce wrote:
> […]
> 
> That's pretty cool! One way to do this with Meson is to spawn a 
> shell script as custom target, but that obviously sucks. It might 
> be worth reporting this as issue upstream, with a concrete 
> usecase like this, the Meson maintainers will highly likely add 
> support for it.
> One could also always write a plugin as a last resort.
> 
> > […]

I'll look to ensuring my facts are correct, and then find out where to
put an issue about this – I am assuming a GitHub repository with issues
.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-04-10 at 17:56 +, Matthias Klumpp via Digitalmars-d-
announce wrote:
> […]
> SCons is considered evil, last time I checked ^^ => 
> https://wiki.debian.org/UpstreamGuide#line867
> (unless it's used right, which seems to be hard) - I have no idea 
> though on whether the issues with it were fixed, the entry on 
> SCons hasn't been updated in a while.

Given that some of the "facts" there are actually wrong, I think we can
infer Debian people assume Autotools is all that is needed and are
uninterested in new things. SCons has supported sonames for a while,
for example.

Prejudice in these things, as in all things, tends to get reified and
become unalterable fact. This no longer worries me.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-04-10 at 12:41 +, Matthias Klumpp via Digitalmars-d-
announce wrote:
> 
[…].
> 
> I am not buying the necessity of not-splitbuilding for 
> optimizations yet. If that would be the case, how do 
> optimizations work with projects using GCC/Clang where 
> splitbuilding is the default and often only option (like Mesa, 
> Linux, lots of scientific stuff).

I am investigating this architecture because Chapel code cannot really
be compiled separately as far as I can see. cf. http://chapel.cray.com/
 Chapel is a PGAS language (like X10) for use with Big Computation™ on
serious computers and also any computer. I'm interested as a way of
connecting Python visualisation to computation that NumPy can't really
handle.

It seems sensible therefore to offer this way of working for D since
whether there is actually any optimisation benefit or not some people
think there is and use it as a stick to beat you with if it isn't
there.

> Having some level of dub integration is Meson would be neat 
> indeed - maybe one could make a small helper binary Meson can 
> call to fetch things from the dub registry.
> I wonder though how that would jive with Meson's own 
> subprojects/wrap system. Probably worth investigating.

My thought for SCons was to delegate the package fetching to Dub as a
subprocess or write some Python to use the Dub API. I'm not clear on
that as yet, the issue is whether the Dub local source repo is the
right way forward – using Dub for preparing the compiled artefact is
likely not the right way forward for SCons. This would then make it
easy to do something for Rust/Cargo – except that SCons doesn't really
support Rust yet, and with Cargo are there any Rust users not using
Cargo.
 
Having said all this SCons stuff, if there was Meson support for this
"get the source from the Dub repository, compile it and make it a
dependency" I'd likely stay with Meson for my codes.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-10 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2017-04-10 at 08:39 +, Atila Neves via Digitalmars-d-
announce wrote:
> […]
> 
> As far as I know the only build system that does this by default 
> for D is reggae.

I will be adding a new builder to the SCons D tools to do whole source
and per package compiling – to add to the module at a time compiling.
It would be good to add this for CMake-D and the D support in Meson.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: dmd Backend converted to Boost License

2017-04-07 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2017-04-07 at 18:51 +0100, Russel Winder wrote:
> […]
> So now the campaign begins to get DMD formally packaged by Debian and
> Fedora.
> 
> Having DMD packaged as well as LDC and GDC will be a great thing for
> marketing of D.

We also need GDC in Fedora.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: dmd Backend converted to Boost License

2017-04-07 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2017-04-07 at 08:14 -0700, 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!

So now the campaign begins to get DMD formally packaged by Debian and
Fedora.

Having DMD packaged as well as LDC and GDC will be a great thing for
marketing of D.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: D support for the Meson build system

2017-04-07 Thread Russel Winder via Digitalmars-d-announce

On Sunday, 21 August 2016 at 19:08:59 UTC, Matthias Klumpp wrote:
[…]
In the past few days I added support for D (all three major 
compilers) to the Meson build system, with some great results-

[…]

I hope you find this as useful as I do :-)

[…]

Yes, I do , it's great.

Currently though there is apparently no integration between Meson 
and the Dub repository, i.e. it is not possible to get 
dependencies via Dub as purely a dependency manager and nothing 
to do with actual build.





Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool

2016-12-26 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2016-12-26 at 14:42 +0100, Johannes Pfau via Digitalmars-d-
announce wrote:
> […]
> 
> I think this has been fixed by the debian maintainers.
> 
> -- Johannes

Splendid. I must have missed the change happening.

I can confirm it all does now work fine. Which is great.

Is the DMD distribution the only source of rdmd, or is there a LDC or
GDC version?


-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: New GDC binaries: 2.068.2, shared library support, multilib support & a new gdmd tool

2016-12-26 Thread Russel Winder via Digitalmars-d-announce
Has the problem of the Debian Sid GDC packages and LDC packages having
conflicting file installs been sorted so that it is possible to have
both installed and usable at the same time?

On Mon, 2016-12-26 at 10:51 +0100, Daniel Kozák via Digitalmars-d-
announce wrote:
> 
> Johannes Pfau via Digitalmars-d-announce 
>  napsal Ne, pro 25, 2016 v
> 8∶41 
> :
> > Happy holidays everybody,
> > 
> > I'm happy to finally announce the release of new GDC binaries at
> > https://gdcproject.org/downloads . GDC is the GNU D Compiler, a D
> > compiler using GCC as the compiler backend.
> > 
> > ...
> 
> Wow this is best xmas gift, thank you and all others who makes this 
> possible
-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: Article: Running D without its runtime

2016-11-12 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2016-11-11 at 22:51 +, Guillaume Piolat via Digitalmars-d-
announce wrote:
> On Thursday, 10 November 2016 at 06:52:12 UTC, Olivier Pisano 
> wrote:
> > I cannot read your website on Firefox 45 (no text is 
> > displayed). It works on chromium anyway.
> 
> FWIW it should work now

Definitely does. Thanks for making the change.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: Article: Running D without its runtime

2016-11-10 Thread Russel Winder via Digitalmars-d-announce
On Thu, 2016-11-10 at 06:52 +, Olivier Pisano via Digitalmars-d-
announce wrote:
> I cannot read your website on Firefox 45 (no text is displayed). 
> It works on chromium anyway.

I see only some (bold?) test items, the basic text is not visible. I am
using Chrome Stable   54.0.2840.90 (64-bit)  on Debian Sid.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: GC blessed for C++ (again)

2016-09-29 Thread Russel Winder via Digitalmars-d-announce
On Wed, 2016-09-28 at 13:50 -0700, Ali Çehreli via Digitalmars-d-
announce wrote:
> https://www.reddit.com/r/programming/comments/54xnbg/herb_sutters_exp
> erimental_deferred_and_unordered/
> 

And the comments in the thread confirm why Reddit is a massive waste of
time and resources. It should be garbage collected.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: The D Language Foundation is now a tax exempt non-profit organization

2016-08-30 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2016-08-30 at 10:25 -0400, Andrei Alexandrescu via Digitalmars-
d-announce wrote:
[…]
> Unless we have a sort of branch in other countries, I don't see what
> we 
> can do here. -- Andrei

Understood, but without a solution it means no-one outside the USA can
contribute and have the D Foundation receive the tax benefit of a
charitable gift. From what I can tell PSF has't bothered to solve this,
it is a USA organisation for USA people. Also I think donations are in
US$, which means non-US$ donors bear the conversion cost. Someone has
to because the banks are not charities, but it is annoying that non US$
donations get "taxed" twice. 

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: LDC 1.0.0 has been released!

2016-06-07 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2016-06-07 at 01:30 +, deadalnix via Digitalmars-d-announce 
wrote:
> On Monday, 6 June 2016 at 07:00:56 UTC, Kai Nacke wrote:
> > Hi everyone,
> > 
> > It is a great pleasure to announce that version 1.0.0 of LDC, 
> > the LLVM-based D compiler, is now available for download!
> > 
> > The release is based on the 2.070.2 frontend and standard 
> > library and supports LLVM 3.5-3.8. We provide binaries for 
> > Linux, OX X, Win32 & Win64, Linux/ARM (armv7hf). :-)
> > 
> > As usual, you can find links to the changelog and the binary 
> > packages over at digitalmars.D.ldc:
> > http://forum.dlang.org/post/lwsnqbravjqbnnryv...@forum.dlang.org
> > 
> > Regards,
> > Kai
> 
> What made you say it is 1.0.0 ? In what way is this is a major 
> milestone ?

Because they wanted to. It is major exactly because they have said it
is no longer 0.x.y but 1.x.y. Using the usual (albeit fatuous) manager
thing that 0.x.y is not ready for production but 1.x.y is: LDC has been
production ready for ages, the team have now said that this is so. 

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: LDC 1.0.0 has been released!

2016-06-06 Thread Russel Winder via Digitalmars-d-announce
LDC has been splendid for a long while. This release is in some sense
nothing special. However, as we all know, moving from 0.x.y to 1.x.y
holds a special place in the minds of people not already aware of a
product. Now we can promote D in places it had not been promotable
before because of the Version 1 effect.

Well done to Kai, David, and everyone who has contributed to LDC over
the years for making the product.
 
-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: Release DUB 0.9.25, new logo and updated website design

2016-05-23 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2016-05-23 at 17:40 +0200, Sönke Ludwig via Digitalmars-d-
announce wrote:

> 
> Oh, okay, misunderstood that. The basic protocol is very simple:

My fault, I rushed my original email and didn't set out the problem
properly.

> GET /packages/index.json
> Yields a JSON array with all package names
> 
> GET /packages/[package].json
> Returns a JSON object with general information about a package, 
> including all available versions
> 
> GET /packages/[package]/[version].json
> Returns a JSON object with the package recipe of a particular
> version 
> (dub.json format), augmented with some additional fields
> 
> GET /packages/[package]/[version].zip
> Yields a zipped up version of the package

Sponditious. I will see if I can query the server to create a suitable
dictionary each time so as to avoid caching results, or whether caching
and updating is necessary.

> 
> There is also a separate search API (and some other less interesting
> APIs):
> 
> GET /api/packages/search?q=...
> 
> 
> We should really get that written down on a web page...

The above is close to all that is needed for those of us want an API
for working with a running server.

I might even use this is Python Workshops for testing HTTP APIs. :-)

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part


Re: Official dub packages for Debian and Ubuntu

2016-04-16 Thread Russel Winder via Digitalmars-d-announce
On Fri, 2016-04-15 at 20:03 +0200, Jordi Sayol via Digitalmars-d-
announce wrote:
> […]
> Many thanks Andrei, and all d-apt users.

Thanks for creating and running D-Apt – all it's users a A-D-Apt-able.
;-)


I wish there was an equivalent RPM store for Fedora Rawhide. I'd be
happy to help out creating something, but not if I am the only user.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



signature.asc
Description: This is a digitally signed message part


Re: dlang.org Re-Design Dark Theme

2016-03-14 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2016-03-14 at 17:14 +, jmh530 via Digitalmars-d-announce
wrote:
> On Monday, 14 March 2016 at 16:42:27 UTC, Russel Winder wrote:
> > 
> > Light writing on dark background is so much nicer that the 
> > reverse.
> I disagree.

Your choice, which is why the site should have both, so as not to piss
off the people who disagree.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



signature.asc
Description: This is a digitally signed message part


Re: dlang.org Re-Design Dark Theme

2016-03-14 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2016-03-14 at 12:00 +, Jakob Ovrum via Digitalmars-d-
announce wrote:
> Hello,
> 
> Here's a light-on-dark theme userstyle for the recent dlang.org 
> re-design:

Is this intended as a Stylist style option for the site?

Light writing on dark background is so much nicer that the reverse.

-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



signature.asc
Description: This is a digitally signed message part


Re: Vision for the first semester of 2016

2016-01-26 Thread Russel Winder via Digitalmars-d-announce
Some of this apparently off-topic, but I will get back on-topic by the
end.

On Tue, 2016-01-26 at 21:17 +1300, Rikki Cattermole via Digitalmars-d-
announce wrote:
> I wasn't going to reply, until you tweeted.

Sorry for wrongly assigning geography.

> No just no.

Yes, oh yes, oh yes. 

> When dealing with tertiary institutions especially New Zealand ones, 
> you've got to understand they have massive pressure to get through 
> content. Every single class is standardized nationally, by law.

Sounds like the NZ system is not as good a tertiary education system as
it should be. Having guidelines for curriculum and examination is fine,
but to stadardize at the class level is definitely too low.  UK
universities went through this debate in the 1980 and managed to escape
from legal enforcement.

> You're all worried about doing things best practice in an eco-system.
> That is just not the case here. In these courses they are not meant
> to 
> be teaching a language. But instead use said language to teach with.

There should also be classes in applications construction. Clearly
classes on specification, compilers, etc. the language is tool only and
workflow and best practice of programming are irrelevant.

> The most time a student gets in ANY language is 2 semesters. By the
> time 
> they reach third year (last) they only have 1 per language.
> In these classes the concern is teaching some other relevant concept 
> such as design patterns.

Design patterns are not language agnostic. GoF patterns are 23 year old
and many totally irrelevant with certain programming languages. However
that is a different debate for a different place.

> So you're pushing limited class time for the purpose of teaching
> actual 
> class content instead of non required information for assignments.
> Its a balancing act.

It sounds like the law makers are getting it wrong then. If there is no
time for teaching programming best practice then graduates from the
programme are not ready for employment without first doing an
apprenticeship of some sort.

> But you've got to understand that most of the students going through
> it, 
> are just not interested in going much further then the assignments.
> Simple things like trying OpenGL are beyond them and this is ok.
> They 
> have a lot of things to learn and have real life requirements outside
> of 
> study.

From my time in academia (20 years) I can pretty much agree that most
computing students didn't actually give a shit about computing.
Certainly 40% of them couldn't program. But because of the curriculum
they get degrees, get jobs as programmers and we end up with the mass
of crap code we currently have in the world. 

> The average person learning to program is not spending half the time 
> most D developers do on a slow week. Again this is ok. But we need
> to 
> acknowledge that they won't be anywhere near us or our expectations 
> normally.

Which gets on to a huge hobby horse of mine. If degrees are about
knowledge then there has to be a follow on before people are employed.
Medics do this: three year degree, two or three years on the job
training. Effectively an apprenticeship. Sadly in computing, most
employers assume graduates have the knowledge and the work practice
skills. Clearly they do not.

It seems NZ is enshrining this in law. UK it is jsut what happens.

Of course most university computing academic staff cannot program
either.

> To assume the average person will play around and learn pip ext. is
> just 
> ridiculous. Especially when they have most if not all the code they
> need 
> already available to them via the distribution.

Ridiculous is the wrong word to use here. All Python programmers should
know about pip and PyPI. You are talking about students using Python to
code up answers to exercises. If the academic ensures there is no need
of anything other than the standard distribution, then that is a fine
compromise, in that situation. But a person off that course should
never claim they can program in Python, nor should tehy be considered
for Python programming jobs without further training. 

> These are the same people who we may barely convince to try D out.
> If 
> they struggle to do basic things or at least perceived basic things
> then 
> they won't bother and just say 'too hard'.
> If we can make them happy, most developers over all will be happy.
> Even 
> the average D developer will be glad for it.

Mostly because they cannot be arsed.

Academic's have a responsibility here to configure things for the
students. We did this with C++, Scheme, Miranda, Java, etc. Part of the
initial pack for each course were detailed tested instructions for
students to set up. They didn't have to think, they just had to follow
the recipe.

> At the end of the day, the least amount of steps to do what is
> perceived 
> as basic tasks without any conflicting arguments the better.

True.

1. Download Dub.
2. Dub install standard-distribution

should do it.

> I keep 

Re: Vision for the first semester of 2016

2016-01-25 Thread Russel Winder via Digitalmars-d-announce
On Tue, 2016-01-26 at 17:06 +1300, Rikki Cattermole via Digitalmars-d-
announce wrote:
> […]
> 
> Well whoever these people are, they are most certainly not the
> people 
> I've seen. They wouldn't care or even want to look at PyPI.

The people you have seen are clearly not Pythonistas. This may be by
dint of their teachers/lecturer/tutors/mentors not actually
understanding Python and its culture.

[…]
> 
> 2 years ago, but I can guarantee for students that go through that 
> course and tutors, it won't be changing anytime soon.

OK, in which case I infer the teachers/lecturers/tutors/mentors really
do not understand Python, and should learn more themselves as a matter
of urgency and professionalism.
 
[…]
> 
> You're 100% right that it is the people problem here.
> But right now, Phobos is the only way I can emphasize reuse of the
> core 
> bare-bones libraries.

I disagree (hence my comment about displacement). I think we should fix
the Dub issues and the relationship between Dub, GDC, LDC, DMD,
druntime and Phobos. To use Phobos as a "hack" to solve the problem in
the short term will be a disservice to D in the medium to long term.
 
-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



signature.asc
Description: This is a digitally signed message part


  1   2   >