April 08, 2008
Matthew Wilson wrote:
> "Georg Wrede" <georg@nospam.org> wrote
>> Matthew Wilson wrote:
>> 
>>> Hi
>>> 
>>> It's been a while since my consulting practice stole all the time
>>>  I wanted to spend researching and writing, and things in the publishing world seem to have changed considerably in that time. CUJ is gone, and other magazines seem to have lost their pizzaz (and some, perhaps, quality along with it). Other than the ACCU, I'm not aware of anything C/C++-related maintaining any significant momentum. Of course, I could be quite wrong, which is
>>> why I'm putting out the question.
>> 
>> Well! The second guy this week, who walks in from ages of absence.
>>  Welcome back, Matthew!
> 
> Thanks, but I'm not back yet. A return-to-D is still at least 5-6 months away. But I will be back for sure -> see below

Looking forward to it!

>> When I last remember having seen you here, D was unknown to most folks. Today things are different.
>> 
>> Why not quickly publish what you already have, and then start writing about D? Why beat a terminally ill horse, when you should use a car. (The horse bit is actually your own first paragraph, above!)
> 
> Well, there're several answers. One is that commercially I earn my bread-and-butter from teaching C++, C# and Java development teams how
> to do their thing better, or building products for clients (in C++, C# or Java). As yet there are no D things happening in any commercial
> space that I come near.

When I was a kid and read SciAm, I saw all these ads about commercial versions of Lint. Made me sick to see that a language is so un-ergonomic that you have to buy expensive tools like that.

When my grandfather worked at Nokia, all they made was rubber boots and winter tyres. Later, when my college schoolmate's father was the CEO, they diversified into electronics. They even made a CP/M computer, called MikroMikko. But it was his idea to start making your own future, and that's when they got into mobile phones. We're doing that with D.

> Another side of things is that I've been working on C++ libraries that, in part, borrow some ideas from D (and other languages). You may or may not have heard of Pantheios, my C++ logging API library. It's 100% type-safe, extensible, generic and *extremely* efficient - up to two orders of magnitude faster than all the other C++ logging libraries. Part of the reason for this is that it is able to convert logging statement components to string slices (len+ptr) - i.e. like a
>  D string - which are then treated generically by the core functions that congregate them into a logging entry. And it only does any of this _after_ it's determined whether a given statement is to be logged or not, so it's effectively zero-cost when that logging level is switched off.

Now that's something that ought to be in D's CV!

> In one fell-swoop, Pantheios can eliminate #ifdef DEBUG from application code forever, thanks in part to its D influences. ;-)
> 
> As soon as I get Pantheios out of beta (it's at beta 119, even though
>  it's in production systems around the globe) I plan to write Pantheios.D, and am open-armed to any willing D-collaborators.
> 
> The other major library that I'm working on is FastFormat, which is be a generic, extensible, 100% type-safe, *highly* efficient, I18N/L15N-enabling formatting library that I expect (or at least hope) will kill stone dead C's streams, C++'s IOStreams and any other
>  C++ output/formatting libraries currently in use. It uses similar technology to Pantheios, and is influenced by D's writef() to some degree. I hope to release this in the next few weeks, and again spreaD some Design into the C++ worlD. ;-)

Sounds really cool! Good to see you've covered the day job part.

>> Switch to D, and see Scott Meyers &co sink in the C of obsolesence,
>>  while your street credibility does the Red Bull.
> 
> Well, not sure I think of it quite like that, but I'm definitely still interested in D and plan to get back into it when I am able.

And it ain't gettin' any less interesting.
April 09, 2008
Matthew Wilson wrote:

> As soon as I get Pantheios out of beta (it's at beta 119, even though it's in production systems around the globe) I plan to write Pantheios.D, and am open-armed to any willing D-collaborators.

You would have to compete / co-operate with Tango logging (tango.util.log)
on that one :D

-- 
Lars Ivar Igesund
blog at http://larsivi.net
DSource, #d.tango & #D: larsivi
Dancing the Tango
April 09, 2008
"Lars Ivar Igesund" <larsivar@igesund.net> wrote in message news:ftiqk2$2i09$1@digitalmars.com...
> Matthew Wilson wrote:
>
> > As soon as I get Pantheios out of beta (it's at beta 119, even though it's in production systems around the globe) I plan to write Pantheios.D, and am open-armed to any willing D-collaborators.
>
> You would have to compete / co-operate with Tango logging (tango.util.log)
> on that one :D

I'll check it out (am planning on ordering the Tango/D book this week).

There may not be any competition, however. Remember that Pantheios is a logging *API* library. At least in the C++ world, the use of
Pantheios over an existing logging library gives the best of all worlds. It's nothing more than conjecture at this point, but the
same may apply in the D world. :-)

We'll see later in the year.

Cheers

Matt


April 10, 2008
> Also, as I asked Joel, have you read Extended STL, volume 1? It's kind of a similar flavour/approach, albeit in a more constrained,
> modern, subject area. And it's *heaps* better written than IC++. Sometimes I have to look up things in IC++, and the corrugated
> in-jokes make me cringe. ;-)

I actually liked the humour in IC++ ;p

I have not read Extended STL yet, but I will check it out in a bit.
Sadly we are spending less time developing with C++ these days and more with Java as the web seems to be dominating most domains at the moment I  haven't touched a serious piece of C++ code in almost 7 months :(

Keep up the work, C++ needs an influx of books right now, as everything these days is .net this, ria that java the other and alas dammned C++ :(

cheers
D
April 11, 2008
Matthew Wilson wrote:
>> Actually I should say I mostly read Game Developers magazine more then
>> anything.  But I guess that's not quite your field.
> 
> Probably not in terms of what I tend to do day-to-day.
> 
> But Pantheios (and the no-more-than-weeks-from-release FastFormat) provides high performance, low memory allocation, and high
> robustness, all of which (I'm already being told by games users) are essential features of any library that will be used in games.
> So I guess I have an indirect interest.
> 
>> -Joel
>>
>> PS - I really enjoyed Imperfect C++.
> 
> Thanks. Have you read Extended STL, volume 1 yet? It's a *far* better written book, and continues the shining lights into deep, dark
> corners approach of IC++.
> 
> Cheers
> 
> Matt
> 
> 

No, I haven't but I'll definitely check it out once I get through 2 other books I'm reading.

-Joel
April 11, 2008
Matthew Wilson wrote:

<snip>

> Part of the reason for this is that it is
> able to convert logging statement components to string slices (len+ptr) - i.e. like a D string

<snip>

Interestingly enough Walter has talked about changing to ptr+ptrend for array/string for efficiency.

-Joel
April 11, 2008
janderson wrote:
> Matthew Wilson wrote:
> 
> <snip>
> 
>> Part of the reason for this is that it is
>> able to convert logging statement components to string slices (len+ptr) - i.e. like a D string
> 
> <snip>
> 
> Interestingly enough Walter has talked about changing to ptr+ptrend for array/string for efficiency.

I thought it was to allow implementation of iterators.

Regan
April 11, 2008
Matthew Wilson wrote:
> Hi
> 
> It's been a while since my consulting practice stole all the time I wanted to spend researching and writing, and things in the
> publishing world seem to have changed considerably in that time. CUJ is gone, and other magazines seem to have lost their pizzaz
> (and some, perhaps, quality along with it). Other than the ACCU, I'm not aware of anything C/C++-related maintaining any significant
> momentum. Of course, I could be quite wrong, which is why I'm putting out the question.
> 
> I've a number of things that I want to publish in the remainder of the year, including intro pieces, design discussions and
> tutorials on Pantheios, FastFormat and flecxx, and extracts from my next book, Breaking Up The Monolith. There're also several
> things I'd like to write up that pertain to s/w engineering in general, or to other languages.
> 
> I'd really appreciate hearing from people where they go these days, so I can best target the prospective audience.
> 
> Some possibilities:
>  - CVu / Overload (ACCU)
>  - CodeProject
>  - DDJ
>  - The C++ Source
>  - newsgroups
>  - just not interested in C++ / C++ libraries any more
> 
> Thanks in advance
> 
> Matt
> 
> 

If your articles/posts are not terribly C++ specific, it might be interesting to publish them in the more language-generic sites (DDJ, Code Project, etc.)

-- 
Bruno Medeiros - MSc in CS/E student
http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D
April 11, 2008
"janderson" <askme@me.com> wrote in message news:ftmsi0$e9c$1@digitalmars.com...
> Matthew Wilson wrote:
>
> <snip>
>
> > Part of the reason for this is that it is
> > able to convert logging statement components to string slices (len+ptr) - i.e. like a D string
>
> <snip>
>
> Interestingly enough Walter has talked about changing to ptr+ptrend for array/string for efficiency.

Well, that's quite surprising. I started with that representation (in recls) for that very purpose, but the use cases in which that
was an advantage were substantially fewer than those where you need the length. So I've gone with len+ptr in all subsequent
cases/libraries - including Pantheios and FastFormat - and I'm confident (at least for the kinds of things I've done with slices)
that that's the right decision.

Of course, things might be different in D / with what Walter wants to do, but I'm skeptical until demonstrated otherwise.

Just my tuppeneth

Matt


April 12, 2008
Matthew Wilson wrote:
> "janderson" <askme@me.com> wrote in message news:ftmsi0$e9c$1@digitalmars.com...
>> Matthew Wilson wrote:
>>
>> <snip>
>>
>>> Part of the reason for this is that it is
>>> able to convert logging statement components to string slices (len+ptr) - i.e. like a D string
>> <snip>
>>
>> Interestingly enough Walter has talked about changing to ptr+ptrend for
>> array/string for efficiency.
> 
> Well, that's quite surprising. I started with that representation (in recls) for that very purpose, but the use cases in which that
> was an advantage were substantially fewer than those where you need the length. So I've gone with len+ptr in all subsequent
> cases/libraries - including Pantheios and FastFormat - and I'm confident (at least for the kinds of things I've done with slices)
> that that's the right decision.
> 
> Of course, things might be different in D / with what Walter wants to do, but I'm skeptical until demonstrated otherwise.
> 
> Just my tuppeneth
> 
> Matt
> 
> 

I think it was to do with optimizations the compiler could do with loop iterations.  Of course I'm not going to put words in Walters mouth. Maybe someone can find the thread.

-Joel