¿Cuál es el mejor comentario en el código fuente que has encontrado? [cerrado]

360

¿Cuál es el mejor comentario en el código fuente que has encontrado?

Robert Harvey
fuente

Respuestas:

1462

Soy particularmente culpable de esto, incrustando comentarios no constructivos, poesía en código y pequeñas bromas en la mayoría de mis proyectos (aunque generalmente tengo el sentido suficiente para eliminar cualquier cosa directamente ofensiva antes de lanzar el código). Aquí hay uno que me gusta especialmente, ubicado muy, muy abajo en un 'Objeto de Dios' mal diseñado:

/**
* For the brave souls who get this far: You are the chosen ones,
* the valiant knights of programming who toil away, without rest,
* fixing our most awful code. To you, true saviors, kings of men,
* I say this: never gonna give you up, never gonna let you down,
* never gonna run around and desert you. Never gonna make you cry,
* never gonna say goodbye. Never gonna tell a lie and hurt you.
*/

¡¡¡¡LO SIENTO!!!! Simplemente no pude evitarlo .....!

Y otro, que admitiré que no he liberado en la naturaleza, a pesar de que estoy muy tentado de hacerlo en una de mis clases menos intuitivas:

// 
// Dear maintainer:
// 
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
// 
// total_hours_wasted_here = 42
// 
Jens Roland
fuente
2
// Estimado Programador // // Tu código ahora se ejecuta más lento ahora que arreglé todos los errores que // introdujiste. // Pero tus optimizaciones seguramente ayudaron.
DevinB
2
+.5 para Rickrolling en los comentarios, +.5 para total_hours. Impresionante
Wayne Werner
3
La primera vez que he sido realmente RickRolled, y fue divertido. Cuando veo enlaces a YouTube siempre espero ser RickRolled (¡camello en inglés!), Pero nunca nunca esperé que fuera RickRolled en los comentarios de código.
Vincent McNabb
44
total_hours_wasted_here = -32768, ¿qué debo hacer? Creo que algo está roto.
Behrooz
8
Deje de "actualizar" el contador. No vale la pena volver a colocar esta pregunta en la primera plana .
Michael Myers
1055
Exception up = new Exception("Something is really wrong.");
throw up;  //ha ha
ス ー パ ー フ ァ ミ コ ン
fuente
55
Leí todos los comentarios de arriba a abajo, preguntándome qué querían decir las personas, cuando dicen "reírse, leer este" o "reírse, leer ese". Bien. Acabo de reír leyendo este ...
Daren Thomas
37
Literalmente hice LOL por la inteligencia y el infantilismo combinados de este.
David Koelle el
2
clase MonkeyPoo extiende Exception {}; ... lanzar un nuevo MonkeyPoo (); // porque es mucho más divertido tirar que una excepción
Adam Rosenfield
2
Voy a empezar a usar en lugar de ex a partir de ahora en XD
Ammar
23
Cuando me despierto de un sueño realmente profundo, mi coeficiente intelectual se reduce a aproximadamente 25, y mi mente va a lugares extremadamente extraños. Una vez, después de una larga temporada escribiendo java, me desperté en medio de la noche sintiéndome bastante enfermo y corrí al baño. Cuando vomité en el inodoro, lo único que pude pensar fue "Me pregunto qué excepción estoy lanzando en este momento ..."
Frank Farmer
1052
//When I wrote this, only God and I understood what I was doing
//Now, God only knows
johnc
fuente
175
Esa es una frase de Karl Weierstrass, el matemático que nos dio la maravillosa definición de continuidad épsilon y delta.
Edwin Jarvis
3
Weierstrass el Indiferenciable?
Peter Wone el
44
@Augusto, ¿tiene una fuente para atribuir esa frase a Weierstrass? Me gustaría saber a qué se refería.
Kevin
1048
stop(); // Hammertime!
Tuoski
fuente
8
Me gusta. Da da da DA, da DA, da DA, se acabó (David Spade, SNL, Actualización de fin de semana)
MrBoJangles
83
detener(); // colabora, escucha!
Erik Forbes
24
xkcd.com/210
puetzk
2
detener(); // ¿qué es ese sonido?
Yuval
2
detener(); //! En el nombre del amor. Antes de que me rompas el corazón.
1030

Esto parece evitar que los imbéciles alteren mi código ...

// Autogenerated, do not edit. All changes will be undone.
Ash
fuente
77
Me hace desear que SO sea favorito en respuestas individuales
AviD
3
@AviD Puede marcar stackoverflow.com/questions/184618/…
alex
@alex, bueno duh, ahora ... De todos modos, quise decir lo mismo que tú puedes marcar una pregunta como favorita ...
AviD
@AviD Sí, lo sé, solo sugiero una solución alternativa.
alex
3
Creo que de todos modos estropearán tu código: dice que se arreglará solo, así que ¿por qué no romperlo por diversión?
Mateen Ulhaq
946
// sometimes I believe compiler ignores all my comments
Sergey Kornilov
fuente
26
Espero que el compilador ignore los comentarios de esta persona.
programador de Windows
86
// Como nunca recibí respuesta del compilador, creo que esto es cierto.
Liwen
40
Creo que se supone que es irónico ...
Neil Barnwell
52
la risa , que es el futuro, los compiladores de leer los comentarios sólo para asegurarse de que no han entendido mal; -D
sharkin
44
// # reply_from_compiler te gusta clippy, ¿no?
Carl
930
// I dedicate all this code, all my work, to my wife, Darlene, who will 
// have to support me and our three children and the dog once it gets 
// released into the public.
Sharkin
fuente
169
¿Está esto en algún lugar del código fuente de Duke Nukem Forever? ;)
Adhip Gupta
1
No lo entiendo, ¿qué es tan gracioso?
hasen
11
Está dedicando el siguiente código a su esposa, aunque sabe que es tan malo que lo despedirán o harán que su empresa cierre. :)
Robert P
390
¿Por qué el perro será lanzado al público?
Nosredna
1
@Nosredna, ¡gracias por un comentario tan divertido! @hasen j, el código fue escrito tan mal que el "programador" probablemente perderá su trabajo y, por lo tanto, su esposa tendrá que mantener a la familia.
Jamol
911
//Code sanitized to protect the foolish.
using System;
using System.Collections.Generic;
using System.Text;
using System.Reflection;
using System.Web.UI;

namespace Mobile.Web.Control
{
    /// <summary>
    /// Class used to work around Richard being a fucking idiot
    /// </summary>
    /// <remarks>
    /// The point of this is to work around his poor design so that paging will 
    /// work on a mobile control. The main problem is the BindCompany() method, 
    /// which he hoped would be able to do everything. I hope he dies.
    /// </remarks>
    public abstract class RichardIsAFuckingIdiotControl : MobileBaseControl, ICompanyProfileControl
    {
        protected abstract Pager Pager { get; }

        public void BindCompany(int companyId) { }

        public RichardIsAFuckingIdiotControl()
        {
            MakeSureNobodyAccidentallyGetsBittenByRichardsStupidity();
        }

        private void MakeSureNobodyAccidentallyGetsBittenByRichardsStupidity()
        {
            // Make sure nobody is actually using that fucking bindcompany method
            MethodInfo m = this.GetType().GetMethod("BindCompany", BindingFlags.DeclaredOnly | 
                BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
            if (m != null)
            {
                throw new RichardIsAFuckingIdiotException("No!! Don't use the fucking BindCompany method!!!");
            }
            // P.S. this method is a joke ... the rest of the class is fucking serious
        }

        /// <summary>
        /// This returns true if this control is supposed to be doing anything
        /// at all for this request. Richard thought it was a good idea to load
        /// the entire website during every request and have things turn themselves
        /// off. He also thought bandanas and aviator sunglasses were "fuckin' 
        /// gnarly, dude."
        /// </summary>
        protected bool IsThisTheRightPageImNotSureBecauseRichardIsDumb()
        {
            return Request.QueryString["Section"] == this.MenuItemKey;
        }

        protected override void OnLoad(EventArgs e)
        {
            if (IsThisTheRightPageImNotSureBecauseRichardIsDumb())
            {
                Page.LoadComplete += new EventHandler(Page_LoadComplete);
                Pager.RowCount = GetRowCountBecauseRichardIsDumb();
            }
            base.OnLoad(e);
        }

        protected abstract int GetRowCountBecauseRichardIsDumb();
        protected abstract void BindDataBecauseRichardIsDumb();

        void Page_LoadComplete(object sender, EventArgs e)
        {
            BindDataBecauseRichardIsDumb();
        }

        // the rest of his reduh-ndant interface members
        public abstract string MenuItemName { get; set; }
        public abstract string MenuItemKey { get; set; }
        public abstract bool IsCapable(CapabilityCheck checker, int companyId);
        public abstract bool ShowInMenu { get; }
        public virtual Control CreateHeaderControl()
        {
            return null;
        }
    }
}

Actualización: el autor original del código se ha revelado a sí mismo, por lo que debo dar crédito donde se debe. Dan McKinley dejó la compañía con la que estaba poco después de comenzar, y habla más sobre el código, explicando algunos antecedentes y algunos "WTF" más que escribió 'Richard'.

Tom Ritter
fuente
27
Eso está plagado de obscenidades, pero literalmente me reí en mi cubo todo el tiempo que lo leía.
willasaywhat
241
la censura apesta. traer de vuelta el original!
codificador1
58
Retrotraído. Todos somos adultos aquí. Si el código original hubiera sido "desinfectado", nunca lo habría recordado lo suficiente como para publicarlo aquí.
JosephStyons
56
Será aún más divertido si un cliente ve el nombre de la clase en un seguimiento de la pila.
Finnw
55
NO VAYA A LA VERSIÓN NSFW: el autor aceptó explícitamente la versión SFW en las revisiones 3 y 6.
Adam Davis
825
// somedev1 -  6/7/02 Adding temporary tracking of Login screen
// somedev2 -  5/22/07 Temporary my ass
Rohit
fuente
79
Ah, las buenas soluciones temporales permanentes :)
Michael Stum
17
¡No hay nada tan permanente como temporal!
Microkernel
727
// drunk, fix later

Ojalá estuviera bromeando. Y conociendo al desarrollador que escribió el código, creo que lo dijo en serio.

Daniel Papasian
fuente
258
Eso es ridículo, quien escribe comentarios cuando están borrachos.
Jiminy
66
@Jiminy: ¡En serio! Cuando codifico borracho, me despierto con un código magnífico que, desafortunadamente, no entiendo.
JoshJordan
22
Ohh ... ¡Si no lo entiendes, tiene que ser magnífico!
Anders Hansson el
14
¡¡¡jaja!!! Hice esto solo por diversión: agarré mi repositorio de subversión local para 'borracho', y encontré un comentario de confirmación que no recordaría: "Funciona de nuevo, de alguna manera. Bueno ... ¡estoy borracho!"
ivan_ivanovich_ivanoff
14
ja ja, "... de alguna manera un BAC entre 0.129% y 0.138% confiere capacidad de programación sobrehumana ..." xkcd.com/323
Alpha Codemonkey
719
// Magic. Do not touch.
Jason Sundram
fuente
20
Magia = frágil, tal vez?
MrBoJangles
44
Me recuerda a esto: catb.org/esr/jargon/html/magic-story.html
Simon Howard
55
He tenido que escribir eso muchas veces, principalmente para recordarme a mí mismo que "¡Si tocas el siguiente código sin saber realmente lo que estás haciendo, sucederán cosas malas!"
Shalom Craimer
66
@Simon Howard, solo no lo tocaría si dijera "Más magia"
DevinB
44
Todavía recuerdo que me enseñaron CS en la escuela secundaria, donde nuestras estúpidas preguntas fueron respondidas con "¡Magia!" y la sonrisa más siniestra.
nevets1219
701

#define TRUE FALSE //Happy debugging suckers

Sulik
fuente
95
#define NULL (:: rand ()% 2) // también sería bastante agradable
Viktor Sehr
33
#define if (if (!
Bart van Heukelom
66
@Bart: No puede tener la mitad de parentesco en su código, pero podría hacerlo #define if(x) if(!(x))(o, más siniestramente #define if while)
Chris Lutz
8
Sin embargo, dado que esto realmente funcionaría: los caracteres de comentario hasta el final de la línea se aseguran de que las líneas probables donde se usa esta macro no se compilarán. Por ejemplo: a = TRUE;se traducirá a a = FALSE // Happy debugging suckers;lo que conducirá a un error de compilación porque la terminación ;ahora está en los comentarios. Si usa el comentario de bloque /* Eat this */, funcionará.
rix0rrr
66
#define struct uniones muy útil en sistemas con memoria limitada.
msw
640
// I'm sorry.
Greg D
fuente
179
(El código que siguió me hizo llorar).
Greg D
20
hombre, quiero ver el código que siguió ...
Erik Forbes
33
// Estás perdonado. Ve en paz hijo mío.
Mark Allen
52
Este debería ser un comentario estándar en las plantillas predeterminadas generadas por MSFT
Alexandre Brisebois
1
realmente, ¿cuál es el código que sigue a esto?
chakrit
636
return 1; # returns 1
Lateral
fuente
32
¡Clásico! Pero me gusta éste aún mejor: "i ++; // aumentar i en 1"
steffenj
71
Quién sabe si #DEFINE 1 como algo más ...
icelava
13
Deseo que comentarios como ese no me sean familiares.
Drew Dormann
66
He visto esto mucho. Conozco a muchos codificadores que escriben sus funciones con comentarios y luego completan el código a continuación / al lado de cada comentario. Hace que sea muy fácil escribir funciones comerciales grandes, pero a veces terminas con algunos comentarios bastante detallados.
Beep beep
88
# devuelve uno qué? Sé más específico.
Ozan
591
/* This is O(scary), but seems quick enough in practice. */ 

seguido de cuatro bucles for anidados

Draemon
fuente
33
pfft, eso es solo N ^ 4 muy probablemente, ¡ni tan malo como 4 ^ N o N!
tloach
14
Una vez llegué a una situación con bucles anidados 8 de profundidad. El tiempo de ejecución se midió en horas.
Loren Pechtel
8
Tenía un algoritmo O (n) con un RTT de red de 500 ms en su bucle interno. n> 100k. Ay.
geofftnz
66
Hay una cualidad redentora: saben al menos qué gran terminología O es. Con suerte cada bucle se ejecuta a través de muy pequeño N: -D
Jon Smock
27
Trabajo con alguien que diría, "O (MFG), por favor"
Jason Orendorff
589
// Replaces with spaces the braces in cases where braces in places cause stasis 
   $str = str_replace(array("\{","\}")," ",$str);
Lance Kidwell
fuente
34
+1 - Genio puro. Esto debería ir en una camiseta o algo así :-)
Rook
71
El Dr. Seuss escribe el código? +1!
Blorgbeard sale el
11
Necesita dos sílabas más al final ...
Michael Myers
88
Acabo de abrir los comentarios para decir que necesita dos sílabas más, pero aparentemente me gané tres meses.
Michael Myers
15
No estoy de acuerdo con la necesidad de sílabas adicionales, el medidor es perfecto como está. Cinco grupos de tres sílabas cada uno.
KevDog
542

Dice mucho sobre nuestra profesión que cuando se nos pregunta sobre el "mejor comentario", todos respondemos con los peores comentarios que podemos encontrar ...

rlerallut
fuente
67
Estoy completamente de acuerdo con su comentario de que rara vez se necesitan comentarios.
harpo
16
Depende de los comentarios. Incluso los lenguajes de "autodocumentación" pueden beneficiarse de los comentarios, como Python. Odio tener que revisar el código para descubrir qué está sucediendo, cuando una simple oración me puede decir.
crystallattice
32
No estoy de acuerdo con respecto a que los comentarios sean innecesarios. Hay momentos en que un simple comentario de "encuadre" puede dar sentido a una gran cantidad de código. Por ejemplo, si está utilizando un algoritmo sofisticado para escapar de la complejidad temporal de un algoritmo de fuerza bruta, una referencia puede ser esencial.
Mark Brittingham
83
El código dice qué ... ¡los comentarios dicen por qué!
Richard Ev
3
No podría estar más de acuerdo con "Richard E". Los comentarios están destinados a decirle a su futuro * (compañeros de trabajo, revisores, usted mismo) por qué eligió hacer las cosas de manera perversa en lugar de otra. No estoy para tirar comentarios por todas partes, pero a veces deberían ser obligatorios.
Danita
508
Catch (Exception e) {
 //who cares?
} 
Randyaa
fuente
11
Este me hizo reír como un mental
Tablet
68
Vi lo mismo con // avanzar, nada que ver aquí.
Ferruccio
66
Me reí mucho de este.
Franck
99
Tengo que admitir que he hecho esto en más de una ocasión porque a veces simplemente no importa.
NotMe
17
Wow, escribo ese comentario todo el tiempo. Nunca lo consideré divertido, pensé que era una declaración seria.
Jay
496
/**
 * Always returns true.
 */
public boolean isAvailable() {
    return false;
}

Nunca confíes en un comentario ...

martinus
fuente
85
Siempre les digo a mis compañeros de trabajo. "¡Los comentarios no funcionan!"
OscarRyz
15
Creo que quisiste decir, "nunca confíes en el código". Estoy seguro de que la especificación, el diseño y los requisitos requerían un código de retorno o verdadero :)
gbjbaanb
parece algo que verías en la edición techie de failblog.org
BobC
55
Cosas como esta realmente suceden, las personas no se molestan en mantener la documentación actualizada con los cambios, incluso si está justo encima de la función.
Henk
25
... #define false true?
nuevo123456
457
/*
 * You may think you know what the following code does.
 * But you dont. Trust me.
 * Fiddle with it, and youll spend many a sleepless
 * night cursing the moment you thought youd be clever
 * enough to "optimize" the code below.
 * Now close this file and go play with something else.
 */ 
PoppaVein
fuente
32
Me recuerda a un compañero que juró que podría optimizar un algoritmo de prueba de teorema mecánico que escribí hace años en un proyecto de IA. Él mejoró el rendimiento, pero luego el código no funcionó ... lo cual juró que fue mi culpa.
Mark Brittingham
Hmm, ¿no he visto este en alguna parte?
bzlm 01 de
66
@ Mark Solo dijo que optimizaría el tiempo, no dijo nada sobre la funcionalidad = P
DevinB
98
Si no tiene que funcionar, puedo optimizar cualquier código a un tiempo de ejecución de cero.
Michael Borgwardt
99
Para eso es el control de fuente. Pierda unas horas tratando de optimizarlo, y luego, si no funciona, simplemente retroceda.
Kibbee el
429
try {

} finally { // should never happen 

}
gedevan
fuente
15
++. ¡otros en mi compañía escriben esto todo el tiempo!
CVertex
17
He visto ese comentario (e incluso lo escribí yo mismo) en el pasado, para cosas que realmente nunca deberían suceder (pero por si acaso, aquí hay un código para manejar el error). La parte más divertida es que finalmente se coloca en un bloque, lo que significa que siempre debería suceder ...
Troy Howard
32
Sí, esa fue la broma. =)
Erik Forbes
15
Si tiene una llamada System.exit () en el bloque de prueba, entonces SÍ, ¡finalmente nunca debería suceder!
Romain Linsolas
66
Motivo # 984 para usar Debug.Assert (). ;)
Scott Hanselman
411

De: https://github.com/zepouet/Xee-xCode-4.5/blob/master/XeePhotoshopLoader.m#L108

// At this point, I'd like to take a moment to speak to you about the Adobe PSD
// format. PSD is not a good format. PSD is not even a bad format. Calling it
// such would be an insult to other bad formats, such as PCX or JPEG. No, PSD
// is an abysmal format. Having worked on this code for several weeks now, my
// hate for PSD has grown to a raging fire that burns with the fierce passion
// of a million suns.
//
// If there are two different ways of doing something, PSD will do both, in
// different places. It will then make up three more ways no sane human would
// think of, and do those too. PSD makes inconsistency an art form. Why, for
// instance, did it suddenly decide that *these* particular chunks should be
// aligned to four bytes, and that this alignement should *not* be included in
// the size? Other chunks in other places are either unaligned, or aligned with
// the alignment included in the size. Here, though, it is not included. Either
// one of these three behaviours would be fine. A sane format would pick one.
// PSD, of course, uses all three, and more.
//
// Trying to get data out of a PSD file is like trying to find something in the
// attic of your eccentric old uncle who died in a freak freshwater shark
// attack on his 58th birthday. That last detail may not be important for the
// purposes of the simile, but at this point I am spending a lot of time
// imagining amusing fates for the people responsible for this Rube Goldberg of
// a file format.
//
// Earlier, I tried to get a hold of the latest specs for the PSD file format.
// To do this, I had to apply to them for permission to apply to them to have
// them consider sending me this sacred tome. This would have involved faxing
// them a copy of some document or other, probably signed in blood. I can only
// imagine that they make this process so difficult because they are intensely
// ashamed of having created this abomination. I was naturally not gullible
// enough to go through with this procedure, but if I had done so, I would have
// printed out every single page of the spec, and set them all on fire. Were it
// within my power, I would gather every single copy of those specs, and launch
// them on a spaceship directly into the sun.
//
// PSD is not my favourite file format.
halcy
fuente
1
La línea justo después de eso y su comentario realmente encabezan el pastel. ¿Cordura? Que cordura El formato comió todo ...
Kim Reece
66
s / PSD / Internet Explorer / g. s / formato de archivo / navegador web / g. Ahora coincide con mis pensamientos.
TJ L
10
¡Me da lástima que ese programador haya tenido que pasar por tanto dolor! Pero impresionante comentario. Ha derramado su corazón.
Microkernel
44
Esta línea: // PSD no es mi formato de archivo favorito. hace de esto un clásico.
joedevon
387
const int TEN=10; // As if the value of 10 will fluctuate... 
Mike
fuente
136
En el mercado actual 10 ahora tiene un valor de solo 9.
Steve Fallows
13
Tal vez algún día evolucionaremos más dedos ...
Loren Pechtel
59
¿Qué pasa con valores muy grandes de 10?
Mikeage
184
const int TEN = 11; // El mío va a las once
doblaje
18
Llamar a Fortran desde C: Fortran solo hace llamadas por referencia, por lo que necesita variables para todas las constantes.
Martin Beckett el
364
    #Christmas tree initializer  
    toConnect = []  
    toRead =   [  ]  
    toWrite = [    ]   
    primes = [      ]  
    responses = {}  
    remaining = {}  
Leo
fuente
25
Eso es una victoria. Una gran victoria ...
Ciclón el
16
OK. Voy a usar esto la próxima vez que necesite cuatro matrices vacías y dos hashes.
Josh
Urgh Un fuerte "¡FALLO!" al autor por no saber si está usando un lenguaje sin formato o no.
TheBlastOne
Dudo que no supiera sobre el lenguaje sin formato. Esa es una buena broma :-)
Román
362

Sobre la mitad de un 30 páginas xslt

<!-- Here be dragons  -->
Goran
fuente
8
Todavía estoy tratando de descubrir cómo comentar un XSLT de una manera que tenga sentido.
rjzii
78
Realmente necesitamos más dragones en nuestro código.
Jon Smock el
1
Inicialmente pensé en en.wikipedia.org/wiki/21st_Century_Compilers
chakrit el
66
@annakata crees que es malo, el otro día alguien estaba pidiendo ayuda para lidiar con un archivo xml de 31GB. Lloré de angustia.
Dana the Sane
1
¿Alguien me llamó?
Troggy
353

en un método de línea 2000 completamente sin comentar

{ 
  { 
    while (.. ){ 
      if (..){
          }
      for (.. ){ 
          }
         .... (just putting in the control flow here, imagine another few hundred ifs)
      if(..)   {
            if(..)     {
                   if(..)   {
                ...
                (another few hundred brackets)
                       }
                  }
         } //endif

(De hecho, eliminé todos los corchetes un día solo para ver lo malo que era y, sin formato, obtuve esto:

{{{{}}{}{}{}{}}{{}{{}{}{}{}{}{}{{}{}}{}{}{{}{}{}{}{}{}{}{}{}{}{}{{}}}{{}{{}}{{{}}}{{}{}{}{}{}{}{}{{}}{}{{{}}{}{{}{}}{{{}}{}{}{}{}}{{}}}{}{{}{}{}{{}{{}}{}}{{}}}{{}}{{}}{{}}{}{{}}{{}}{{}}{{}{}{}}{}{}{{{}}{{}}}{}{}{}{}}{{{}{{}{}{}{{}{}{}{}{}{}}{}}{{}}{{}{}}}{{}}{{}}}{{}}{{}}{}{}{}{}{{}}{{}{}{}{}}}}{}{}}{{}{{{}{}{}{}}}}{{}{{{}}}}{{}{{{}{{}}{}{{}}{}{{}{}}{{}}{}{{}}}{{}}}}{{}{}{}{}{}{{{}    {{{{}}{}{}{}{}}{{}{{}{}{}{}{}{}{{}{}}{}{}{{}{}{}{}{}{}{}{}{}{}{}{{}}}{{}{{}}{{{}}}{{}{}{}{}{}{}{}{{}}{}{{{}}{}{{}{}}{{{}}{}{}{}{}}{{}}}{}{{}{}{}{{}{{}}{}}{{}}}{{}}{{}}{{}}{}{{}}{{}}{{}}{{}{}{}}{}{}{{{}}{{}}}{}{}{}{}}{{{}{{}{}{}{{}{}{}{}{}{}}{}}{{}}{{}{}}}{{}}{{}}}{{}}{{}}{}{}{}{}{{}}{{}{}{}{}}}}{}{}}{{}{{{}{}{}{}}}}{{}{{{}}}}{{}{{{}{{}}{}{{}}{}{{}{}}{{}}{}{{}}}{{}}}}{{}{}{}{}{}{{{}{}{{}}{}}}{}}{{}}{{}{}}{{}{{}{{}}}}{{{}{{{}}}}}{{{{{}}}}}{}{}{}{{{{}}}{}{}}{{}{{}}}}{}{{}}{}}}{}}{{}}{{}{}}{{}{{}{{}}}}{{{}{{{}}}}}{{{{{}}}}}{}{}{}{{{{}}}{}{}}{{}{{}}}}

El endif apareció alrededor de la línea 800)

Steve B.
fuente
180
código tour-de-france
Andreas Petersson
77
¡Esto es digno de thedailyworsethanfailure.com!
Deadbug
67
¡Parece Lisp!
endian
8
Ese comentario probablemente esté ahí para corregir un error del compilador. : |
Rob Howard
49
Nivel de complejidad ciclomática de OH SHIIIIIIIII
353
long long ago; /* in a galaxy far far away */ 
Juliano
fuente
1
¿esto realmente funciona? en que idioma
mauris
16
@Mauris: Originalmente era una extensión C y C ++ para enteros de 64 bits, que muchos proveedores admitían. Luego, C99 y C ++ 0x soporte estandarizado para ello: en.wikipedia.org/wiki/Long_long
Juliano
Me hace pensar en los punteros lejanos vs. cercanos que utilizamos en tierras de 16 bits. :)
Macke
1
Todavía funciona perfectamente bien. Lo pusimos por primera vez en nuestro compilador en Convex hace unos 25 años porque DMR sugirió que ese debería ser el nombre de nuestras entradas de 64 bits.
tchrist
352
//This code sucks, you know it and I know it.  
//Move on and call me an idiot later.
KevDog
fuente
26
Sinceramente en el comentario!
Mitchel Sellers
46
Amo la honestidad.
Jeff Schumacher el
2
El primer paso para mejorar es reconocer la deficiencia.
icelava
acepta tus errores antes de que otros los exageren :)
naveen
324
// If this comment is removed the program will blow up 
John Chuckran
fuente
201
Hace mucho tiempo, accidentalmente solucioné un defecto en Java3D agregando un comentario. Era 100% reproducible; Si eliminé el comentario, se bloqueó. Mientras el comentario estuviera allí, funcionó bien. Supongo que fue un extraño problema de tiempo, pero nunca supe exactamente qué estaba sucediendo.
DNS
54
Magic / More Magic
DevinB
16
Esto es como un virus. Contiene contenido destinado a protegerse. Es como el ADN basura que es bueno para copiarse.
Charlie Flowers
23
usted debe comparar el código de bytes generada por las versiones 2
JoelFan
13
Una vez me llevó medio día descubrir que terminar un comentario en C \ (usado para marcar en qué dirección vamos en una matriz 2D) hace que el compilador omita la siguiente línea.
Tgr