1. Список говнокодов пользователя HaskellGovno

    Всего: 56

  2. C++ / Говнокод #11600

    +7

    1. 1
    TPrimitive a((TLine())), b((TCircle()));

    Вынужденный говнокод.
    Должно быть:

    TPrimitive a(TLine()), b(TCircle());

    Но это будет объявлением 2х указателей на функции.

    HaskellGovno, 16 Августа 2012

    Комментарии (49)
  3. Pascal / Говнокод #11584

    +96

    1. 1
    2. 2
    3. 3
    4. 4
    function InterlockedExchangePointer(var Target: Pointer; Value: Pointer): Pointer;
    begin
      Result := Pointer(InterlockedExchange(Integer(Target), Integer(Value)));
    end;

    Windows.pas
    facepalm.jpg
    Delphi, такой Delphi.

    HaskellGovno, 14 Августа 2012

    Комментарии (5)
  4. C++ / Говнокод #11578

    +18

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    template <typename TYPE> class Ptr
    {
    public:
        Ptr():
            Pointer_(0),
            IsValid_(false)
        {
        }
        Ptr( const Ptr<TYPE> &other )
        {
            this->Pointer_ = other.Pointer_;
            this->IsValid_ = other.IsValid_;
        }
        Ptr( TYPE* &ptr ):
            IsValid_(true)
        {
            if ( std::find( Ptr<TYPE>::List_.begin(), Ptr<TYPE>::List_.end(), ptr ) == Ptr<TYPE>::List_.end() )
                Ptr<TYPE>::List_.push_back( ptr );
            this->Pointer_ = ptr;
        }
        ~Ptr()
        {
        }
    
        inline Ptr<TYPE>& operator = ( const Ptr<TYPE> &other )
        {
            this->Pointer_ = other.Pointer_;
            this->IsValid_ = other.IsValid_;
    
            return *this;
        }
    
        inline Ptr<TYPE>& operator = ( TYPE* &ptr )
        {
            if ( std::find( Ptr<TYPE>::List_.begin(), Ptr<TYPE>::List_.end(), ptr ) == Ptr<TYPE>::List_.end() )
                Ptr<TYPE>::List_.push_back( ptr );
    
            this->Pointer_ = ptr;
            this->IsValid_ = true;
    
            return *this;
        }
    
        inline bool operator == ( const Ptr<TYPE> &other )
        {
            return (this->Pointer_ == other.Pointer_) ? true:false;
        }
    
        inline bool operator != ( const Ptr<TYPE> &other )
        {
            return (this->Pointer_ != other.Pointer_) ? true:false;
        }
    
        inline TYPE* operator -> ()
        {
            return this->Pointer_;
        }
    
        inline bool isValid() const
        {
            if (!this->IsValid_)
                return false;
            return this->IsValid_ = ( (std::find( Ptr<TYPE>::List_.begin(), Ptr<TYPE>::List_.end(), this->Pointer_ ) == Ptr<TYPE>::List_.end() ) ? false:true );
        }
    
        inline void release()
        {
            if ( this->isValid() )
            {
                Ptr<TYPE>::List_.erase( std::find( Ptr<TYPE>::List_.begin(), Ptr<TYPE>::List_.end(), this->Pointer_ ) );
                delete this->Pointer_;
            }
    
            this->Pointer_ = 0;
            this->IsValid_ = false;
        }
    
        inline TYPE* get()
        {
            return this->Pointer_;
        }
    private:
        TYPE* Pointer_;
        mutable bool IsValid_;
    
        static std::list < TYPE* > List_;
    };
    
    template <typename TYPE> std::list < TYPE* > Ptr<TYPE>::List_;

    HaskellGovno, 12 Августа 2012

    Комментарии (34)
  5. Куча / Говнокод #11505

    +113

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    Знаешь, (с), по-моему, я схожу с ума...
    Дело в том, что иногда по ночам мне кажется, что я яваблядь. Мне хочется выделять память, зарабатывать на доширак,
    пиздеть про энтерпрайз, сваливать свои проблемы на чужие плечи и писать нечитаемый бессмысленный говнокод.
    Я ворочаюсь, страдаю, рычу, а под конец вскакиваю с кровати и хватаю первое, что попалось под руку.
    Это может быть тапок, топор или простая поварешка, но в моем воображении она становится огромным
    прожорливым интерпретатором.
    С этим интерпретатором я открываю корпус сервера, ставлю ещё две планки оперативной памяти и с громким боевым
    кличем выбегаю на улицу. Я бегаю под окнами своих соседей и ору: "Ява не тормозит, тупые нищебляди!! Купите нормальное железо!!"
    Но они не покупают... Они привыкли.
    И когда я уставший, но довольный, поднимаюсь в квартиру, наоравшись и набегавшись, одна из дверей открывается.
    Там, лукаво сверкая глазенками, стоит маленький соседский мальчик Женька. Он громко шепчет беззыбым ртом
    "Клоссплатфолменность!" и ободряюще мигает мне одним глазом.
    Я, улыбаясь ему, прохожу мимо, и в душе моей поют заказчики.
    А дома я открываю бутылку водки, морщась, выпиваю ее до половины, и ловлю кота. Ругая этого "сраного волосатого индуса",
    я сажаю его за клавиатуру, и чтобы он не убежал, приматываю его к ней скотчем.
    А дальше все просто.
    Я стою у окна, пуская скупую быдлокодерскую слезу по своей прыщавой щеке , и мечтаю. Я представляю, что огни домов --
    это пламя костров, на которых сжигают крестопидоров, шум машин -- это рев кулеров в серверных, а в мире нет ничего,
    кроме великого энтерпрайза и нас, яваблядей...
    И я жду, что вдруг, вот сейчас, в мою дверь войдет начальник и скажет: "Эй, раб, ты чо так так долго? Давай, быстро дописывай
    исходник. Похуй, если будет тормозить - разберутся те, кто будет сопровождать! ГА-га-га-га!" И ободряюще хлопнет меня по спине.
    И тогда не будет в мире счастливее человека, чем я... Точнее, явабляди.
    Что же мне делать, анон? Что же мне делать?

    Моё творчество. :)

    Знаешь, ты мне уже надоел. Пользователь HaskellGovno забанен до 07.08.2012. В следующий раз забаню навсегда.

    HaskellGovno, 31 Июля 2012

    Комментарии (20)
  6. C++ / Говнокод #11486

    +19

    1. 1
    delete this;

    Это написал гейдевщик.
    Но когда его спросили: "Почему? Зачем?"
    Он ответил: "Я создаю принципиально новую охретектуру движка. Это будет лучший двиг всех времен и народов."

    HaskellGovno, 28 Июля 2012

    Комментарии (46)
  7. C++ / Говнокод #11484

    +13

    1. 1
    #pragma comment(linker, "/export:?CreateEngine3D@pbl3d@@YGJAAPAUIEngine3D@1@ABUSENGINE3DCREATEPARAMETERS@1@PAUIEvents@1@@Z=?CreateEngine3D@core@pbl3d@@YGJAAPAUIEngine3D@2@ABUSENGINE3DCREATEPARAMETERS@2@PAUIEvents@2@@Z")

    "А вдоль дороги мертвые кресты стоят... И тишина..."

    HaskellGovno, 27 Июля 2012

    Комментарии (6)
  8. Haskell / Говнокод #11478

    −95

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    fibs = 0:1:zipWith (+) fibs (tail fibs)
    fib = (fibs !!)
     
    main =  let 
                    a = [fib 250000..] 
                    b = a!!0
                    c = 1
            in b `seq` print c

    Haskell не может в not used expression elimination. Не используемые константы a и b не убрал из вычисления.
    В результате видим пустую трату времени time: 13.15s :
    http://ideone.com/41Q8D
    И это то ленивом языке, не смотря на то, что эти вычисления не нужны. Можно писать в багтреккер.

    P.S.: Когда уже хаскель в подсветку говнокода добавят?

    HaskellGovno, 26 Июля 2012

    Комментарии (58)
  9. C++ / Говнокод #11357

    +23

    1. 1
    2. 2
    if(this==NULL)
      return;

    HaskellGovno, 04 Июля 2012

    Комментарии (10)
  10. C++ / Говнокод #11352

    +5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    template<class T>
    bool IsAligned(T SizeOrAddress, const size_t AlignStep)
    {
    	return SizeOrAddress==Align(SizeOrAddress, AlignStep);
    }

    HaskellGovno, 03 Июля 2012

    Комментарии (7)
  11. C++ / Говнокод #11348

    +15

    1. 1
    void* const allocateOrDie(const size_t Size) throw();

    Ультиматум. :)

    HaskellGovno, 03 Июля 2012

    Комментарии (25)