this post was submitted on 22 Jul 2023
5 points (85.7% liked)

English usage and grammar

380 readers
1 users here now

A community to discuss and ask questions about English usage and grammar.

If your post refers to a specific English variant, please indicate it within square brackets (for instance [Canadian]).

Online resources:

Sibling communities:

Rules of conduct:

The usual ones on Lemmy and Mastodon.. In short: be kind or at least respectful, no offensive language, no harassment, no spam.

(Icon: entry "English" in the Oxford English Dictionary, 1933. Banner: page from Chaucer's "The Wife of Bath's Tale".)

founded 2 years ago
MODERATORS
 

I’m a computer programmer. When we test programs, we often use a function called “assert” to check if the program produces the conditions we expect.

For example, this test will fail if the + produces an incorrect result:

assert( 2 + 3 ).equals(5)

Another meaning of “assert” in programming is “check, and take action, if necessary”. For instance, the procedure assertDataPresent() may check if the data has already been loaded. If it hasn’t, the function would try to do so, so that in either case the data is present after the procedure is executed.

Which of these meanings is the more common one in regular English? Can “assert” even be used in these ways outside programming?

you are viewing a single comment's thread
view the rest of the comments
[–] Skyhighatrist 2 points 2 years ago* (last edited 2 years ago) (1 children)

Assert is used in programming to test a condition and cause a crash if it fails. They are used for conditions that are unrecoverable and should never happen. Then you have unit test assertions as in the example op gave. Those fail if the asserted fact isn't what you expected. The third way, as in the assertDataPresent() example, the implication is that whatever you are asserting must be true. Usually in a method like assertDataPresent() it will make certain that the data is present. i.e. it would add it if it wasn't already there. That's how I've mostly seen it used in programming. So under that usage, it is actually closer to the english definition, because it's not just checking, it's ensuring that after the assertion that whatever was being asserted is true.

[–] pglpm 2 points 2 years ago (1 children)

Thank you, I see, it isn't just a check as I understood. Then the meaning does make sense.

[–] Skyhighatrist 2 points 2 years ago

I edited my comment to provide more context about the 3 kinds of assert I see in programming.