Article View: be.comp.programming
Article #9977Re: Strekking (afgeleid v: C, C++, C.NET)
From: Philip Paeps
Date: Mon, 01 Apr 2002 22:40
Date: Mon, 01 Apr 2002 22:40
228 lines
14458 bytes
14458 bytes
Kris <nospam@for.me> wrote: [...] > > krijgen na een tijdje knopjes-verslaving, en vergeten hoe een �chte editor > > eruit ziet. De monsterlijke syntax doet hen elke vorm van logisch denken > > vergeten, en na een tijdje gaan ze ook denken dat er geen ander systeem > > bestaat dan het pseudo-systeem van Microsoft waarop ze 'werken' [2]. > Hoe the fuck kunt gij weten hoe die syntax er uit ziet! Waarover zijt gij in > hemelsnaam bezig!?!?!? Moeten alle talen met puntkommas en accolades werken > vooralleer ze een programmeertaal kunnen genoemd worden? De BASIC syntax is > super eenvoudig en heel gemakkelijk aan te leren. Per stukje syntax dat niet > logisch is in VB dat jij kan noemen, noem ik er u twee die niet logisch zijn > in C of C++. Ik daag u uit! Kom er maar mee af. Voeg nu *EINDELIJK* eens > feiten, bewijzen en daden bij uw misselijk-makende woorden. Mister > know-it-all. Hoe kan ik weten hoe *verschrikkelijk* de VB syntax is? Als je acht sourcefiles van elk ca. 5000 lijnen krijgt met quasi geen commentaar om te vertalen naar een serieuze taal om op een serieus platform te laten werken, leer je wel snel de gemakken van een gezonde syntax kennen. Het programma in kwestie haalde data uit een relationele database, en daar kwamen dus nogal wat ''' in voor. Als VB programmeur moet je weten dat de ''' in VB een comment is (idioot toch, h�) en dat die in SQL een waarde aangeeft. Resultaat 40,000 lijnen gevuld met vreselijke constructies. Ik vermoed dat er wel een elegantere manier is om SQL data te quoten in VB, maar de programmeur van die rommel had dat dus blijkbaar niet door, en mij interesseerd het niet echt. In ieder geval heb ik bijna twee maanden nodig gehad om dat smerig excuus voor een programma onder NetBSD te laten werken. De C/C++ syntax is een 'algemene' syntax die 'ge-erft' wordt in zowat alle andere talen. De C-syntax is ook 'logisch'. *Elk* block word in curlies gezet behalve als het block uit ��n lijn bestaat, dan mag je de curlies zo laten. Elke functie wordt aangeroepen met een comma-separated lijst van argumenten in parens, array subscripts zitten in braces. Strings zitten in double quotes character constants in single quotes. Comments in /* */. Magische karakters verliezen hun magie door ze te backslashen. Een end-of-statement toon je met een ';'. Een pointer declareer je met een '*' en het adres spreek je aan met een '&'. Zo simpel is dat. Er zijn nog wat regeltjes, maar met de basis kan je zowat alles. Die regels gelden in C, C++, Objective-C, Java, Perl en PHP, en waarschijnlijk in nog een paar honderd talen die ik niet ken. De C syntax is *logisch*, daar krijg je geen speld tussen. Tuurlijk kan je obfuscated C schrijven, maar dat lijkt me nogal kinderachtig om in een serieus programma te gaan doen. Als je je een beetje aan beschaafde normen houdt (��n functie per lijn, geen lijnen van meer dan 80 characters, nested blocks indenten, enz enz) en het allemaal een beetje uniform houdt (een goede editor helpt) is de C syntax zeer �sthetisch, en zeer logisch te volgen. Obfuscated VB is een synoniem voor VB. Alle VB code die ik al gezien en vertaald heb was een misselijke combinatie van ''' en & en . en andere vreemde karakters all over de shop. Zelfs met wat indenten is er moeilijk kop of staart aan te knopen. > > voor open standaarden ontgaat hen volledig, en hun broncode [3] delen met > > anderen zullen ze nooit doen [4], waardoor ze niet kunnen genieten van de > > immense voordelen van de OpenSource community, en waardoor de rest van de > > community niet kan genieten van hun source (weliswaar als humoristisch > > interludium, maar dit terzijde). > Wat is dit nu voor ongelofelijk gezeik!! Alsof alle C/C++ programmeurs wel > zo zijn! Wat heeft dit nu in hemelsnaam met de taal te maken???????? Uw > eerste posts vond ik gewoon bekrompen, maar ik vermoedde dat er toch ietwat > intelligentie achter die woorden zat. Hoe meer u schijft, hoe bekakter en > hoe achterlijker ik u vind. Gij doet alsof gij hier de man met mensenkennis > zijt, alsof gij alles kunt veralgemenen en alsof gij hier de enige zijt die > *weet* wat programmeren is. Ik heb altijd al mijn broncode van VB > vrijgegeven. Ik weet talloze sites die sources verspreiden. Tegelijk kan ik > u ook sites geven die ook alleen maar binaries aanbieden van programma's die > in C of C++ werden geschreven. Wat is dit nu voor onzin. Iedereen moet toch > niet hetzelfde denken. Als jij het niet eens bent met iemand zijn mening, > wel gebruik zijn producten dan niet. Dommerik. Toch spijtig dat die VB broncode voor bijna iedereen volkomen nutteloos is. Je kan ze enkel compilen met een duur product, en je kunt ze enkel runnen op een duur product. Ik vrees dat je de OpenSource filosofie nog eens zult moeten nalezen. Niet iedereen moet hetzelfde denken. Ieder zijn mening. Mijn mening is dat VB geen programmeertaal is voor de redenen die ik al honderde keren herhaald heb. Mijn mening is verder dat VB de OpenSource movement afremt, om redenen die ik ook al honderde keren heb aangehaald. In mijn mening is er niets goed aan VB. Die mening heb ik geformuleerd na verschillende VB programma's te vertalen zodat ze in de echte wereld konden runnen, en na het lezen van verschillende preken over VB door VB-programmeurs en tegen VB programmeurs. Als jouw mening niet dezelfde is als die van mij, dan mag je die gerust uitdrukken, maar dan liefst niet op een manier die me persoonlijk afbreekt. Ik spreek me niet uit over jouw persoonlijke intelligentie, ik verwacht dan ook dat jij je niet uitspreekt over die van mij. Ik stel alleen vast dat de VB'ers die ik ken bepaalde karakteristieken vertonen. De conclusies die je daaruit trekt zijn voor jouw rekening. > > Door Visual Basic te 'programmeren' [5] doe je jezelf en je medemens dus > > alleen leed aan. Het is als drugs: het is ongezond, onnatuurlijk, en > > slecht voor iedereen die er direct of indirect mee in aanraking komt. Het > > is ook verslavend, en als je er mee bezig bent, zie je niet hoe slecht het > > wel is, en wat voor vreselijke dingen je eigenlijk wel aan het doen bent. > Eigenlijk zijt gij een klootzakske, weet ge dat. Denk ni dat ge u met zulke > uitspraken populair gaat maken. Alleen uw schoothondje 'domi' zal hier > misschien heftig op reageren met het alleszeggende woord 'Amen'.. of was het > 'Woef'. Uw vergelijkingen beginnen stilaan marginaal te worden en vertonen > een hoge graad van achterlijkheid. Als u met zulke uitspraken uw punt wil > aantonen, dan kan u zichzelf best het zwijgen opleggen. [1] Dacht je dat ik populariteit op ��n of andere manier belangrijk vond? Ik vind het belangrijk om mijn mening te uiten over dingen waar ik niet mee akkoord ben, en over dingen waar ik wel mee akkoord ben. Ik ben het niet akkoord met VB, en dat licht ik dan ook toe. Ik denk ook niet dat Domi het appreci�erd dat je hem als 'mijn schoothondje' gaat bestempelen. Domi en ik zijn het toevallig over sommige dingen eens. Over sommige dingen zijn we het ook oneens ... Vi/Emacs, BSD/Linux, BSD/GPL, WM/KDE, enz enz. Wat mijn vergelijkingen en analogi�n betreft: ze zijn inderdaad soms nogal wat aan de 'koude' kant, maar ze naar mijn mening illustreren ze redelijk goed wat ik tracht te zeggen. > > Niet vergeten dat programmeren een kunst is, en dat bij elke kunst een > > kultuur past. Visual Basic is 'grafiti tagging' (het verneuken van > > potenti�el redelijk goed ogende grafiti kunst) in het kulturele equivalent > > van een ge-drogeerde achterbuurt. Vergelijk met C: Wagner in Bayreuth. > Het is fijn te horen dat gij het programmeren blijkbaar zeer serieus neemt. > Toch is het niet de bedoeling van de gemiddelde sterveling om van het > programmeren zijn leven te maken. Ik neem programmeren zeer serieus. Programmeren is mijn broodwinning, en mijn hobby. Ik beschouw programmeren als een kunst, en programmeurs als kunstenaars. En als kunstenaar mag men soms al eens wat excentriek zijn, denk ik. > Verder zou ik willen dat je deze vergelijking eens uitlegt, en zegt wat je > er echt mee bedoelt. Ofwel doe je het gemakkelijk en geef je toe dat je > gewoon wou kakken op VB, en dat deze 'moeilijke' woorden best wel eens goed > zouden kunnen overkomen, ofwel doe je het the hard way en probeer je er een > uitleg voor te verzinnen, waarvan je toch weet dat je in de grond gaat > geboord worden. Try me. Mijn vergelijking is redelijk simpel. Grafiti op zich is een kunst, het 'taggen' van grafiti is een verkrachting van een bestaand kunstwerk. Een ge-drogeerde buurt zal ik niet moeten uitleggen, denk ik. Een grafiti artist produceert kunstwerken, net als een C programmeur dat doet en Wagner dat deed. Een grafiti-tagger verkracht een kunstwerk, net als een VB-knoeier dat regelmatig doet. Een gedrogeerde buurt is het verpesten van een buurt, Bayreuth is een zeer aangename buurt. Als je niet akkoord gaat met mijn VB mening is dat natuurlijk je volste recht. Ik ga namelijk niet akkoord met die van jou, en kom daar ook voor uit. > > Is het je ook niet opgevallen dat �chte programmeurs hun werk met liefde > > behandelen. Mooie, �sthetische, 'cleane' code, verpakt onder een vrije, > > respectvolle licentie (BSD of GPL), voorzien van een man-page en honderden > > sappige comments in de source? Dit terwijl VB'ers meestal binaries > > leveren die onder maar ��n platform, en dan liefst nog enkel bepaalde > > versies van dat ene platform, werken [6], onder ��n of andere > > hyper-restrictieve licentie. Dat ze hun source angstvallig geheim houden > > uit vrees dat iemand anders het beter zou kunnen. > Zoals reeds eerder gezegd: het veralgemenen van dingen wordt door u > misbruikt als wapen om uw punt dat volkomen fout is en niet gefundeerd is, > toch goed te doen overkomen. Al de code die wij geschreven hebben is op t > net gevlogen *ZONDER* licentie. *nog* minder restricties dan GPL en BSD. > Van mijn part mogen ze de auteur naam veranderen. Het kan me niet schelen. Daar ben ik het niet mee eens. Ik werk steeds volgens de 'two-point' BSD licentie. Men mag mijn code distribueren, binair of als source, onder de simpele voorwaarde dat mijn naam ergens blijft staan. Dit heeft twee redenen: ten eerste weten gebruikers dan waar ze mogelijk nieuwe versies kunnen bekomen van mijn code, en ten tweede kan men bugs rechtstreeks aan mij melden. Het is zinloos om bugs over mijn inserter-library te gaan sturen naar de distributeur van een teletekst-editor. Zij linken enkel mijn libary zodat ze zelf de communicatie met de inserter niet moeten verzorgen. > En neen, het zijn geen programmatjes van 10 lijntjes. Je zou verschieten van > de software die wij in VB hebben geschreven. En buiten mezelf zijn er nog > duizenden en duizenden anderen die er net hetzelfde over denken. Het is dus > niet eerlijk om zo te veralgemenen. En het is niet omdat je 'respectvolle > licenties' gebruikt (whatever it may be!?) dat je zelf een respectvol iemand > bent. In tegendeel in jouw geval. Toch spijtig dat die code op de overgrote meerderheid van systemen niet kan draaien. Ik heb respect voor mijn mede-programmeurs. Als ik een GPL library gebruik zal ik de termen van de GPL respecteren, als ik een BSD library release verwacht ik van mijn mede-programmeurs dat ze die termen respecteren. Als je een verbetering aan mijn sources kunt brengen, leef ik in de redelijke verwachting dat je die naar mij stuurt, zodat ik ze in een volgende versie kan impelementeren met correcte referentie en attributie naar jou. Als jij een programma schrijft in een taal die niemand kan lezen, laat staan gebruiken, mag je ze nog aan de wereld releasen zonder licentie of onder een 'echte' licentie. Ze zal nooit echt deel uitmaken van het OpenSource movement, en zal het nog steeds remmen. Je blijft immers van de gebruiker verwachten dat hij dezelfde closed source implementatie gebruikt die jij gebruikt. [...] > > - Philip [die weer sentimenteel is] > zeikerd Dank je. Nu mag je me een klootzak vinden, of een omhooggevallen kommaneuker: ik blijf bij mijn standpunt: VB is slecht. VB is viraal. VB is verslavend. VB remt het OpenSource movement. VB legt programmeurs limieten op. VB is enkel goed om wintendo gui's te tekenen. Die mening is het resultaat van bijna tien jaar gebruik van un*x en vrije impelementaties van standaard programmeertalen. - Philip -- Philip Paeps philip@paeps.cx A complex system that works is invariably found to have evolved from a simple system that works.
Technical Details
Message-ID:
<6l5q8.43687$DE4.6056@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!nntp.cs.ubc.ca!newsfeed.berkeley.edu!news-hog.berkeley.edu!ucberkeley!logbridge.uoregon.edu!arclight.uoregon.edu!fr.usenet-edu.net!usenet-edu.net!fr.clara.net!heighliner.fr.clara.net!proxad.net!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<3CA72B69.E5F1026F@pandora.be> <RjIp8.41740$DE4.5447@afrodite.telenet-ops.be> <b8keaus79n6shmg8snqrlrd8dmrljjut72@4ax.com> <IxIp8.41803$DE4.5372@afrodite.telenet-ops.be> <h2leaugj70cat7vbicrak5ntcpqevl6g8h@4ax.com> <RCIp8.41815$DE4.5326@afrodite.telenet-ops.be> <ocleau8etb9qci91qlc5plibn0iiklee5c@4ax.com> <SyNp8.11$Lf6.1054@news.chello.be> <yiWp8.42485$DE4.5695@afrodite.telenet-ops.be> <bx4q8.475$Lf6.10139@news.chello.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,40b21b9456002881
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-04-01 14:40:16 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!nntp.cs.ubc.ca!newsfeed.berkeley.edu!news-hog.berkeley.edu!ucberkeley!logbridge.uoregon.edu!arclight.uoregon.edu!fr.usenet-edu.net!usenet-edu.net!fr.clara.net!heighliner.fr.clara.net!proxad.net!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: Philip Paeps <philip@paeps.cx>
Subject: Re: Strekking (afgeleid v: C, C++, C.NET)
Newsgroups: be.comp.programming
References: <3CA72B69.E5F1026F@pandora.be> <RjIp8.41740$DE4.5447@afrodite.telenet-ops.be> <b8keaus79n6shmg8snqrlrd8dmrljjut72@4ax.com> <IxIp8.41803$DE4.5372@afrodite.telenet-ops.be> <h2leaugj70cat7vbicrak5ntcpqevl6g8h@4ax.com> <RCIp8.41815$DE4.5326@afrodite.telenet-ops.be> <ocleau8etb9qci91qlc5plibn0iiklee5c@4ax.com> <SyNp8.11$Lf6.1054@news.chello.be> <yiWp8.42485$DE4.5695@afrodite.telenet-ops.be> <bx4q8.475$Lf6.10139@news.chello.be>
User-Agent: tin/1.5.12-20020323 ("Sugar") (UNIX) (FreeBSD/4.5-STABLE (i386))
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 8bit
Lines: 228
Message-ID: <6l5q8.43687$DE4.6056@afrodite.telenet-ops.be>
Date: Mon, 01 Apr 2002 22:40:02 GMT
NNTP-Posting-Host: 213.118.135.125
X-Complaints-To: abuse@telenet.be
X-Trace: afrodite.telenet-ops.be 1017700802 213.118.135.125 (Tue, 02 Apr 2002 00:40:02 MET DST)
NNTP-Posting-Date: Tue, 02 Apr 2002 00:40:02 MET DST
Organization: Telenet Internet