lua-users home
lua-l archive

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

Grace Hopper’s literal bug pasted in her notebook is one of my favorite (true!) stories, but it’s not the first time the term “bug” was used to describe a defect.  The History section of this article has the details:

Here’s Admiral Hopper’s bug:


On Nov 23, 2020, at 4:53 PM, Tom Becker <> wrote:

I work in a regulated industry where "defect" is a standard term. But "bug" is perfectly acceptable. It goes back to the earliest days of computing. Everyone understands what it means. And it means the same thing regardless of which word is used. A defect is a cause of a failure. The original bug, found in the wires and pasted into the computer lab notebook, was the same thing.

To paraphrase Einstein, we should be as precise as possible in our use of language, but no more precise.


-----Original Message-----
From: sur-behoffski <>
Sent: Monday, November 23, 2020 3:31 PM
Subject: Language selection request: "bug" versus "defect"

EXTERNAL EMAIL - Use caution opening attachments and links.


I'm noticing that people are using the term "bug" where they find behaviours that seem to be some sort of breakage in the language.

I prefer to use the term "defect" for the case where "the language fails to fulfil a promise made by its (abstract) definition", and only use "bug" colloquially where this discrepancy is obviously true.

The key is the promises (i.e. the "contract") made, for an abstract implementation, by the language designers.  Time-critical
(real-time) specifications are relatively rare in language specifications, as a portable, flexible and especially a dynamic scripting language may want to be applicable to a wide range of hardware/OS/runtime environment configurations.

Ironically, a change that results in an unexpected improvement to the runtime performance of some code may seem to be a "bug" -- it may expose a race condition (the real defect) that was hidden by the previous performance profile.

Lua-l is a forum which has quite a number of technically sophisticated participants, including members of the core language and standard library designers and implementers.  This is not an unusual practice -- many programs have developer/technical/author/release announcement lists.  (Although not the case in the current discussion, newbies sometimes come in with questions that are a little off-kilter, and are typically handled with understanding and are helped in various ways.)

If possible, I'd prefer to see the term "defect", with its careful connection to a detailed understanding of exactly what the language specification (Reference Manual) is offering, be used where possible.

"Programming in Lua", on the other hand, gives examples where the choice of algorithm (e.g. concatenating a large number of immutable
strings) can dramatically affect performance.

Just thinking about this now, perhaps there's room for a "Cookbook" or "Recipes" publication.  At the moment, the Lua Wiki serves at least part of this role, but I'm not sure about how it's indexed, cross-referenced, sectioned or sequenced in covering its main content.  A cookbook could start as a page in the Wiki, and perhaps end up forming the basis of a stand-alone publication.

Just some ideas... hopefully this isn't too distracting...

sur-behoffski (Brenton Hoff)
programmer, Grouse Software
This message may constitute an advertisement of a BD group's products or services or a solicitation of interest in them. If this is such a message and you would like to opt out of receiving future advertisements or solicitations from this BD group, please forward this e-mail to [BD.v1.0]
This message (which includes any attachments) is intended only for the designated recipient(s). It may contain confidential or proprietary information and may be subject to the attorney-client privilege or other confidentiality protections. If you are not a designated recipient, you may not review, use, copy or distribute this message. If you received this in error, please notify the sender by reply e-mail and delete this message. Thank you.
Corporate Headquarters Mailing Address: BD (Becton, Dickinson and Company) 1 Becton Drive Franklin Lakes, NJ 07417 U.S.A.