[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lmi] Stylistic question about constructing error messages

From: Vadim Zeitlin
Subject: Re: [lmi] Stylistic question about constructing error messages
Date: Sun, 14 Feb 2016 00:56:14 +0100

On Sat, 13 Feb 2016 23:02:13 +0000 Greg Chicares <address@hidden> wrote:

GC> On 2016-02-13 17:32, Vadim Zeitlin wrote:
GC> [...]
GC> >  The last two are fine, but lmi_error() is now insufficiently frightening
GC> > because it's not clear that this function is going to throw an exception
GC> > and not return. I'd prefer lmi_throw_error() or even just lmi_throw().
GC> > Perhaps something like lmi_error_no_return() could do as well, but I think
GC> > it's very valuable to have a reminder that this function doesn't return.
GC> > 
GC> >  Could you find some name which would have "throw", "exception" or
GC> > "no_return" in its name and yet be acceptable to you? This is not urgent 
GC> > all, of course, especially because I found a bug in handling of select
GC> > tables (not all ages are consecutive, after all...), so I'm busy with
GC> > fixing it right now anyhow. But if you can think of something more 
GC> > than lmi_error() but less fearsome than lmi_fatal(), it would be great.
GC> select tables...not consecutive: Do you simply mean that they're select
GC> and ultimate, e.g.
GC>   ---select-- ult.
GC>   a0 a1 a2 a3  x4
GC>   b1 b2 b3 b4  x5
GC>   c2 c3 c4 c5  x6
GC>                x7
GC> means these row vectors (indented only in the hope of clarity)?
GC>   a0 a1 a2 a3 x4 x5 x6 x7
GC>      b1 b2 b3 b4 x5 x6 x7
GC>         c2 c3 c4 c5 x6 x7
GC> Or are there other areas of nonconsecutiveness?

 Sorry, I was speaking about the ages: if you remember, we decided that the
code had to check that they're consecutive, but this is not actually the
case for the ages in the first column of select tables as there is a jump
of select_period after max_select_age (generally speaking; there is no jump
if max_select_age + select_period == max_age).

 Anyhow, it's not -- or shouldn't be, once I get around to actually fixing
it -- be a big deal, it's just that I manage to confuse myself with the
select table conventions 50% of time on average, so I want to be extra
careful with them, they provide a great potential for off by one errors (as
if I needed it to make them...).

GC> insufficiently frightening: I'd rather prepend "lmi_" to an evocative
GC> word than to a phrase. Do you like any of these verbs?
GC>   balk
GC>   revert
GC>   recoil
GC>   ricochet
GC>   boomerang
GC>   teleport
GC> I don't much like 'revert' because it sounds like a VCS action; or
GC> 'teleport', which attempts to capture the meaning of longjmp but
GC> sounds too much like a science-fiction cliché. Wait...nethack...
GC>   lmi_branchport
GC> What do you say to that?

 That lmi shouldn't try to be as funny as NetHack -- sorry but it would be
more work than I can handle, NetHack dev team worked on their puns for
years and I'm afraid they had more talent than me, too.

 What about lmi_bail_out()? Or, if "bail out" counts as two words and not
one, lmi_abandon()?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]