[Mal was zum lachen] Programmieren im Ghetto



  • Heute war mal wieder eine besonders langweilige Englischstunde, deshalb haben ein paar Kameraden und ich und eine neue Programmiersprache ausgedacht, genannt Spast, sie soll es den seltsamen Individuen die sich Hip-Hopper nennen ermöglichen auch zu programmieren. In Ermangelung der Fähigkeit, eine echte eigene Sprache samt Compiler zu entwickeln, habe ich einfach mit Hilfe der C Präprozessor Anweisungen C++ dahingehen umgeformt.

    😃

    Hier die Version 0.2

    #ifndef spast
    
    #include <iostream>
    //Zeichen
    #define ey ;
    #define eastCoast {
    #define westCoast }
    
    // Schlüsselwörter
    
    //sonstige
    #define gebHer(x) return x;
    #define battle main
    #define yo
    #define alder
    #define fett true
    #define unCool false
    #define fick typedef
    #define geheimsprache asm
    #define chillen do
    #define genauDes explicit
    #define ballern export
    #define koksLinie inline
    #define dealer namespace
    #define bodyCheck sizeof
    #define ich this
    #define goldKette typeid
    #define block using
    #define homie friend
    #define konkret operator
    
    //Variablen
    #define nix void
    #define graffiti char
    #define fettesGraffiti wchar_t
    #define ischSo bool
    #define zahl int
    #define fetteZahl long
    #define kleineZahl short
    #define flow float
    #define beat double
    #define fetterBeat long double
    #define wort std::string
    #define knarre enum
    
    // Typmodifikatoren
    #define krass unsigned
    #define tight signed
    #define mutant mutable
    #define geklaut register
    #define nutte volatile
    #define oldschool const
    #define phate static
    #define joint virtual
    #define machSelber auto
    #define andereGang extern
    
    //Kontrollstrukturen
    #define jede for
    #define probleme if
    #define nixProblem else
    #define MachstDu while
    #define SuchAus switch
    #define des(h) case h:
    #define fickDich break;
    #define gehtNet default:
    #define cruisen goto
    #define machWeiter continue
    
    //Datenstrukturen
    #define spast class
    #define wichser struct
    #define deiMudder template
    #define bitch typename
    #define topSecret private:
    #define kennsch public:
    #define ichSchwoer protected:
    #define mach new;
    #define machWeg delete;
    #define gang union
    
    //Exceptions
    #define dealen try
    #define knast catch
    #define bullen(x) throw x;
    
    //Casts
    #define phaterDiss static_cast
    #define oldschoolDiss const_cast
    #define kifferDiss dynamic_cast
    #define krasserDiss reinterpret_cast
    
    // Funktionen
    
    // IO
    #define eySag std::cout<<
    #define eyWas std::cin>>
    #define unDann <<
    #define machEnter std::endl
    
    //sonstige
    #define machMalLow system("pause");
    
    #endif
    

    Und hier gleich das berühmte Hallo Welt Programm in "Spast":

    #include "spast.hpp"
    
    zahl battle()
    eastCoast
        yo eySag "Hallo Welt" unDann machEnter ey
        yo machMalLow ey
        gebHer(0) alder ey
    westCoast
    

    Hoffe konnte euch ein Schmunseln ins Gesicht zaubern.

    edit: Ich will damit niemanden Beleidigen oder heruntersetzen, das ganze ist als Satire gedacht. Spast heist es, nach dem Schlüsselwort, für eine Klasse.



  • asozial



  • ich finds lustig 😃



  • Du hast noch was vergessen:

    #define amStart {
    #define binRaus }
    

    ^^



  • DAS nenn ich doch ma genial {=



  • LOL!!! 👍

    Ey man, is geil!



  • "machEnter ey" 😃



  • 😃

    Das erinnert mich an eines der Samples zu MASM32 (in examples\exampl02\leeto\31337):

    include 31337.inc
    
    .386
    M0d31 Squ1zhed, C0113ctC411
    option casemap :none
    
    inc100d     \masm32\include\windows.inc
    inc100d     \masm32\include\kernel32.inc
    inc100d     \masm32\include\user32.inc
    inc100d     resource.inc
    
    inc100dl1b  \masm32\lib\kernel32.lib
    inc100dl1b  \masm32\lib\user32.lib
    
    D1gPr0c     pr0070   :HWND, :UINT, :WPARAM, :LPARAM
    
    cr4p
    t1tl3           munch   "R u nUtz???",0
    b14h            munch   "U w4nn4 qu17???",0
    
    ztr1ng1         munch   "4bcd3fGh1Jk1mN0pQr57UvwXy2",0
    ztr1ng2         munch   "aBCDeFGHiJKLMnOPQRsTUVwXYZ",0
    ztr1ng3         munch   "åbcdêfghÏjklmnôpqrstúvwxyz",0
    
    l33tztr1ngz     b1gg13  ztr1ng1, ztr1ng2, ztr1ng3, ztr1ng2, ztr1ng3, ztr1ng1, ztr1ng2, ztr1ng1
    
    junk
    inzt4nce        b1gg13  ?
    
    c00d
    start:
        p00sh       ebp
    
        bl0w        z1lch
        h0ll3r      GetModuleHandle
        dr4g        [inzt4nce], e4x
    
        d00         DialogBoxParam, inzt4nce,101, NULL, addie D1gPr0c, NULL
    
        j4nk        ebp
    
        b4ck
    
    r4nd0m    MACRO
        junk
        seed     dd    ?
    
        c00d
        dr4g     e4x, [seed]
        r0l0r    e4x, 3
        X0r      e4x, EdIcz
        dr4g     [seed], e4x
    ENDM
    
    ...
    

    Edit: @Nachposter: du hast ja recht. Ich habs ein wenig gekürzt.



  • Wer soll denn das alles lesen?





  • das ist doch wirklich mal Geil 😃



  • Die Idee is gut, nur der Name paßt mir nicht 👎 . Klingt so nach einem diskriminierenden Schimpfwort, das ich in der Kindheit immer gebraucht habe- bis ich erfuhr, was ein "Spast" ist. ⚠

    Anderer name wäre besser gewesen. 💡



  • Die Idee is gut, nur der Name paßt mir nicht . Klingt so nach einem diskriminierenden Schimpfwort, das ich in der Kindheit immer gebraucht habe- bis ich erfuhr, was ein "Spast" ist.

    Wenn du was besseres hast, nur raus damit! Ich bin generell für Vorschläge offen.

    hier mal ein etwas längerer Code:

    #include "spast.hpp"
    
    deiMudder<bitch T>
    spast lowrider
    eastCoast
        kennsch
            lowrider()
            eastCoast
                lang  = 0 ey
                data = NULL ey
            westCoast
    
            lowrider(zahl l,T* d)
                eastCoast
                    lang = l ey
                    data = mach T[l] ey
                    jede(zahl i=0;i<l;i++)
                        eastCoast
                            data[i] = d[i] ey
                        westCoast
                westCoast
    
            joint ~lowrider()
            eastCoast
                probleme(!data) machWeg[] data ey
            westCoast
    
            lowrider(oldschool lowrider& op)
            eastCoast
                machWeg[] ich->data ey
                ich->data = mach T[op.lang] ey
                jede(zahl i=0;i<ich->lang;i++)
                    eastCoast
                        ich->data[i]=op.data[i] ey
                    westCoast
            westCoast
    
            lowrider& konkret =(oldschool lowrider& op)
            eastCoast
                machWeg[] ich->data ey
                ich->data = mach T[op.lang] ey
                jede(zahl i=0;i<ich->lang;i++)
                    eastCoast
                        ich->data[i]=op.data[i] ey
                    westCoast
            westCoast
    
            T& konkret [](zahl i)
            eastCoast
                probleme(i<lang)
                    gebHer(data[i]) ey
                bullen 0 ey
            westCoast
    
            nix malen()
            eastCoast
                jede(zahl i=0;i<lang;i++)
                    eySag data[i] unDann machEnter ey
            westCoast
        ichSchwoer
    
        topSecret
            zahl lang ey
            T* data ey
    westCoast ey
    
    zahl battle()
    eastCoast
        zahl a[10] ey
        jede(zahl i=0;i<10;i++)
            eastCoast
                a[i]=i*i-i ey
            westCoast
        lowrider<zahl> z(10,a) ey
        z.malen() ey
        jede(zahl i=0;i<10;i++)
        eastCoast
            eySag "Jowww" unDann machEnter ey
        westCoast
        yo machMalLow ey
        gebHer(0) alder ey
    westCoast
    


  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Neuigkeiten aus der realen Welt verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • walljumper schrieb:

    Wenn du was besseres hast, nur raus damit! Ich bin generell für Vorschläge offen.

    hier mal ein etwas längerer Code:

    Wie wäre es mit "Gotham"- nicht weil ich Batman-Fan bin, sondern weil das Anarcho-Image paßt. Oder "Monty Python". Oder "Brain" oder "Purche"



  • Auf sowas kann auch nur ein Informatiker kommen ... 🙄



  • Hallo

    Hazzel schrieb:

    Auf sowas kann auch nur ein Informatiker kommen ... 🙄

    Ich dachte schon ich sei der Einzige, der so etwas kindisch und albern findet, aber anscheinend arbeiten Programmierer aktiv an ihrem Image.

    chrische



  • Welches Image? Wo keines ist, kann man nicht dran arbeiten.



  • Hallo

    zum Beispiel: schlechter Humor.

    chrische



  • ROFL tolle Idee! 😛 👍


Anmelden zum Antworten