Bruno Takahashi C. de Oliveira

Textos / Como Caçar Elefantes

Voltar à página de textos

Esta página foi baseada numa lista muito comumente encontrada em correntes de e-mail e muitas outras fontes, então há uma grande probabilidade de você conhecê-la. Alguns dos itens fui eu que inventei, mas não vou dizer quais...

Como caçar elefantes:

Matemáticos: Caçam elefantes indo à África, excluindo tudo que não é um elefante, e capturando o que quer que sobre.

Matemáticos Experientes: Tentarão provar a existência de pelo menos um elefante, e que este elefante é único, antes de partir para a captura como um exercício subordinado.

Professores de Matemática: Utilizam elefantes sem provar sua existência, deixando essa demonstração como um exercício para seus alunos.

Cientistas da Computação: Executariam o seguinte algoritmo:

  1. Vá para a África
  2. Comece no Cabo da Boa Esperança
  3. Caminhe para o norte numa maneira ordenada, percorrendo o continente alternadamente para leste e para oeste.
  4. Durante cada passo, faça: {

Cientistas da Computação com Experiência: Modificariam o algoritmo anterior colocando um elefante conhecido no Cairo para assegurar-se de que o algoritmo termina.

Engenheiros: Vão para a África, pegando animais cinzentos aleatoriamente e pesando-os, parando quando encontra qualquer um deles pesando dentro de 15% a mais ou a menos que qualquer elefante previamente observado.

Nietzsche: O ato de capturar um elefante não causa a captura do elefante; causa e efeito são eventos separados e desconexos. Não se deve caçar elefantes já existentes, e sim tomar algo qualquer e redefiní-lo como elefante.

Freud:Caçar elefantes é sintoma da sua insegurança sexual.

Fermat: Diria "eu capturei um elefante realmente maravilhoso mas não tinha uma jaula suficientemente grande para colocá-lo." E ninguém mais conseguiria encontrar o maldito elefante nos três séculos seguintes.

Estatísticos: Não caçam elefantes, mas conseguem aproximar quantos elefantes há na África através do seguinte método:

  1. Pegam, ao acaso, dois animais da África.
  2. Contam quantos deles são elefantes
  3. Se 1 deles é um elefante, concluem que 50% dos animais da África são elefantes;
  4. Se os dois são elefantes, concluem que todos os animais da África são elefantes;
  5. Se nenhum deles é um elefante, concluem que não há elefantes na África. Se há, eles são discrepantes e não entram no box-plot.

Bill Gates: Para acabar com os elefantes da África, não precisa caçá-los um por um. Basta fabricar elefantes e incluí-los como componente padrão do Windows e convencer o mundo inteiro de que esses elefantes são bem melhores, levando os elefantes da África à falência.

George Bush: Convence o mundo inteiro de que os elefantes da África são um império do Mal e são uma ameaça para a democracia, e que têm armas químicas escondidas dentro de suas trombas. Está convencido de que os Estados Unidos têm a missão divina de libertar a África dos tirânicos elefantes. Depois de uma massiva operação militar, ninguém encontra tromba química nenhuma e mudam rapidamente de assunto.


Programadores em Java: Escreveriam o seguinte trecho de programa muito simples e direto:

...
try {
   World w;
   try {
      w = World.getDefaultWorld();
   }
   catch (WorldNotFoundException e) {
      System.err.println("O mundo não existe. Contate seu administrador.");
      System.exit(0);
   }
   catch (WorldCollapseException e) {
      System.err.println("O mundo se acabou; é impossível fazer qualquer " +
            "coisa; em particular, é impossível procurar elefantes.");
      System.exit(0);
   }
   catch (WorldIsNotRoundException e) {
      System.err.println("O mundo padrão é quadrado. Se há elefantes, eles" +
                         "já caíram.");
   }
   catch (NoDefaultWorldException e) {
      System.err.println("Seu sistema não tem um mundo padrão definido." +
                         "Ajuste a variável de ambiente DEF_WORLD e tente" +
                         "novamente");
      System.exit(0);
   }

   AbstractWorldModel awl = world.getAbstractWorldModel();
   DefaultWorldModel dwl = awl.getDefaultModel();
   ContinentListModel clm = dwl.getContinentListModel(
                        ContinentListModel.CONTINENTS_BY_NAME,
                        ContinentListModel.NO_DUPLICATE_CONTINENTS,
                        ContinentListModel.SEPARATE_AMERICAS,
                        ContinentListModel.NORTH_POLE_NOT_A_CONTINENT);
   
   Vector v = clm.getAllPossibleNamesFor("Africa");
   Continent c;
   for (Enumeration en = v.elements(); en.hasNextElement(); ) {
      Object o = en.nextElement();
      try {
         ContinentName cn = ((ContinentNameWrapper) o).getContinentName();
         try {
            c = clm.getContinentByName(cn);
         }
         catch (ContinentNotFoundException e) {
            continue;
         }
      }
      catch (ClassCastException e) {
         System.err.println("Seu mundo possui elementos que não são " + 
                            "continentes. Contate o fabricante.");
      }
   }

   try {
      AnimalVector v = c.getAllLivingBeingsByType(Zoology.ANIMALS);
   }
   catch (NoTaxonomicSpecificationInterpretationException)
      System.err.println("O continente não suporta classificação taxonômica.");
      System.exit(0);
   }
   
   for (Enumeration e = v.elements(); e.hasNextElement(); ) {
      Object o = e.nextElement();
      try {
         Elephant e = (Elephant) o;
         System.err.println("Found elephant: " + e.getName() + e.getRace() +
             e.getDescriptionMessage());
      }
      catch (ClassCastException e) {
         System.err.println("Encontrado um animal que não é um elefante:" +
                 e.getClass());
      }
   }
}

...

Programadores não tão espertos em Perl: Escreveriam o seguinte programa, que imprime todos os elefantes da áfrica em ordem reversa.

($an{color} eq "gray" && isa $an "mammal" && size $an >= 4000
   and print "Found elephant: $_{name}") foreach grep { isa $_ "Animal" } 
   sort reverse @$wildlife{"Africa"};

Programadores espertos em Perl: Baixam o módulo ElephantFinder do CPAN e escrevem:

import ElephantFinder;
elephantFind("Africa") or die "No elephants in Africa.";

Administradores UNIX: Basta dar os comandos:

[root@world ~]# cd /africa

[root@world /africa]# find -type mammal -color "gray" -size +3000kg | \
                      grep -v "hipopotamo" | grep -v "rinoceronte"