Digamos que estoy tratando de describir mi código en una reunión técnica.
Primero, configuro el booleano
foobar
entrue
y
En segundo lugar, configuré el booleano
foobar
enfalse
Parece un poco prolijo. Si foobar
se activara, probablemente podría decir:
Tercero, alternar
foobar
Por implicación aquí, sabes que es un booleano. Entonces no debería ser capaz de:
Cuarto, yo verifico foobar
y
Quinto, falsifico foobar
¿Qué también, por implicación, les dirá a mis oyentes que estamos tratando con una variable booleana? ¿Existe una terminología adecuada para esto? Gracias.
terminology
boolean
Akiva
fuente
fuente
Respuestas:
También puede usar "configurarlo en verdadero" y "configurarlo en falso" , por supuesto.
fuente
Si es posible, en lugar de centrarse en el valor booleano, debe intentar describir lo que representa. Algunos ejemplos:
De esta manera hablarías en términos más naturales. Y así, en su reunión, en lugar de "verificar el foobar y luego falsificarlo" simplemente "comenzaría a foobar y luego lo detendría" (si foobar es un servicio, de hecho).
Cuando realmente necesita hablar sobre un valor booleano, puede ir con "set / reset" o "set to true" y "set to false". "Toggle" suena bastante bien en todos los contextos.
Y si trabajas en una tienda booleana (lo que sea que eso pueda significar), entonces probablemente necesites más palabras de las que el diccionario tiene para ofrecer. En ese caso, truthify y falsify son simplemente partes de su microspeak .
fuente
signal = HighVoltage
osignal = Active
es en mi humilde opinión mucho más claro quesignal = true
.isStarted
,isActive
,isCaseSensitive
,mockConnection
, ... @PieterB: Estoy parcialmente de acuerdo con usted. "Establecer lo booleano" no significa inherentemente establecerlo en verdadero. Sin embargo, "Establecer elisActive
indicador" se puede interpretar razonablemente como que significa establecerlo en verdadero.signal = true
de hecho no está claro, pero si lo vas a usarsignal = Active
, también podrías usarloisSignalActive = true
. Tenga en cuenta que esto se aplica principalmente a los descriptores que son claramente mutuamente excluyentes y complementos exactos. Activo / Inactivo se ajusta a la factura. HighVoltage no lo hace, ya que "no alto voltaje" podría significar, por ejemplo, "bajo voltaje", o podría significar "bajo o medio voltaje". En el último caso, el argumento booleano obviamente no se aplica. En el primero, lo hace.Me gusta "set" / "clear", pero tenga cuidado con la ambigüedad en su fraseo. Como señala Filip , "establecer la variable bool" podría significar escribir algún valor en la variable. Pero "poner la bandera" es más claro.
Terminología relacionada: convertir un entero 0 / distinto de cero en un valor 0/1 se denomina "booleanizing" .
Si realmente usa el valor 0/1 como un entero (en lugar de un verdadero / falso
bool
), es posible que desee usar esa palabra. De lo contrario, probablemente solo aparecerá si está hablando del costo de las operaciones que el compilador debe realizar. (O si está vectorizando manualmente con un SIMD, compare para producir bits todo cero / todo uno en cada elemento vectorial).En C y C ++, a
bool
puede implícitamente volver a convertirse en un entero como 0 o 1, y en implementaciones normalesbool
se almacena como un valor de un byte que es 0 o 1 (no cualquier valor distinto de cero). Esto permite la eficienciaa && b
, pero en la práctica muchos compiladores de C han perdido las optimizaciones .Esa función se compila con múltiples instrucciones (sin incluir
ret
) en la mayoría de las arquitecturas. (MIPS es una excepción interesante, ya que tiene instrucciones de comparar en registro en lugar de un registro de código de condición / indicador separado). en el explorador del compilador Godbolt para x86-64, MIPS y Thumb ARM , podemos ver que la versión x86-64 es:Lo siento, este ejemplo de qué booleanizar es un poco grande / fuera de tema.
fuente
Creo que "establecer
Foobar
en verdadero" y "establecerFoobar
en falso" son sencillos y concisos. No creo que haya palabras individuales para esas frases, y cuando necesitas ser técnico y preciso, a veces es mejor estar dispuesto a ser un poco prolijo que arriesgarte a confundir a tu audiencia.fuente
"Configuración" es la forma correcta de describir el acto de asignar un valor a una variable. Si desea ser pedante al respecto, podría llamarlo "asignación", pero "conjunto" es muy frecuente. De hecho, es idiomático Java escribir
setFoobar()
(ygetFoobar()
) métodos para realizar la asignación. C # lleva un paso más lejos conget
yset
definiciones de propiedades.Con respecto a su segundo punto sobre el uso de "verdad" y "falsificación" a "por implicación, dígale a mis oyentes que estamos tratando con una variable booleana", ya les está diciendo a los oyentes que la variable es booleana cuando dice:
fuente
isFoobar()
Afirmar oTambién se puede usar Retract , más a menudo cuando se habla de proposiciones en lugar de variables simples, por ejemplo en Prolog. Por lo general, hay diferentes términos que dependen de lo que representa el booleano, en lugar de un término general para todos los idiomas que tienen valores booleanos (establecer / borrar bandera o bit, habilitar / deshabilitar dispositivo o modo, afirmar / retraer propuesta, probablemente más).
fuente
Para cambiar el valor de un booleano de
true
afalse
, o viceversa, se llama negación .Para establecer el valor de un booleano
false
se dice como falsifica el booleano. Te entendería si dijeras "verdad", sin embargo, esto no suena bien. No estoy seguro de cuál es el verbo para hacer algotrue
, por lo que podría ser correcto.Esperaría a que alguien con una mejor respuesta llegue antes de que comiences a usar "verdad" de cualquier manera.
fuente
Un booleano es un equivalente de un SPST (unipolar, solo tiro) interruptor eléctrico: uno lo convierte en o fuera .
fuente
done
variable" o "Laerror
variable está desactivada" ambos suenan un poco apagados, al menos para mí. Las alternativas sugeridas por otras respuestas parecen ser más frecuentes: "Establezca ladone
variable / bool / flag [en verdadero]" o "Laerror
bandera se borra".