A fluent is a role a value can play: a statement that becomes true when something initiates it and stays true until something terminates it, whatever happens in between. A latched alarm is a fluent: it holds from the threshold crossing until someone acknowledges it.
Unlike a boolean flag, a fluent keeps when it started, what started it, and its history, so "was the alarm active at 03:14?" has an answer.
Fluents are designed but not yet in the compiler. The name comes from the event calculus.
Not to be confused with a signal: a signal has no memory, a fluent is all memory.