Archief - [ALG] Welke taal?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

killgore

Legacy Member
Hale zei:
wat jij bedoelt, killgore, is proceduraal. Functioneel programmeren zijn talen zoals idd bijv. Haskell.
prolly, benaming is bijkomstig voor mij, maar ik denk dat jullie wel weten wat ik bedoelde ... :).

@El_lamor: ach ja, zo is er hier nog wat leven in de brouwerij :woohoo:

Yen

Legacy Member
Hoe valt C met C# te vergelijken? Wat zijn de grote verschillen tussen beide?

NecroNeo

Legacy Member
C is niet object georiënteerd en C# is dat wel :)

hoewel ik het gevoel heb dat 'n aantal mensen hier nog een iets uitgebreidere lijst verschillen zullen geven ;) (zeker doen trouwens, ik kan het mss nog gebruiken voor m'n thesis volgend jaar)

killgore

Legacy Member
vgl C++:
Interfaces ipv meervoudige overving (interface kan je zien als abstracte klasse in c++).
Properties ipv getters/setters (je kan dus doen klasseObject.BeschermdeIntVariabele = 5, wat eigenlijk intern een "setter" aanroept voor dan bv. de echte variabele intVariabele).
Puur .net en OO based (dus uw main zit ook in een klasse etc).
Vermijden van pointers (unsafe code) -> garabage collection. Het basissysteem is dus gewone variabelen/ reference variabelen, zoals bij java, je kan echter nog naar pointers gaan via unsafe codeblokken.
Klasses zijn allen inline gedeclareerd.
Simpelere Array afhandeling die je toch meestal laat vallen voor lists.
Alle variabelentypen zijn afgeleid van Object
enz enz.

http://msdn.microsoft.com/msdnmag/issues/01/07/ctocsharp/default.aspx

C naar c# is een iets immens grotere stap.

Yen

Legacy Member
Nu ja, ik weet dat C blijkbaar een betere taal is voor 'belangrijke' programma's.
Zo zie ik dat kernels, netwerk diensten, ... vaak in C geschreven zijn.
En dat C# vaker terugkomt als men grafische programma's gaat schrijven.

NecroNeo

Legacy Member
Yen zei:
Nu ja, ik weet dat C blijkbaar een betere taal is voor 'belangrijke' programma's.
Zo zie ik dat kernels, netwerk diensten, ... vaak in C geschreven zijn.
En dat C# vaker terugkomt als men grafische programma's gaat schrijven.

ik denk (and correct me if i'm wrong) dat heel veel kernels nu nog in C zijn omdat ze gebaseerd zijn op oudere code. En omdat het te duur/omslachtig is om ze in c++ te herschrijven. Of dat de voordelen niet opwegen tegen de extra moeite.

Messias.

Legacy Member
NecroNeo zei:
ik denk (and correct me if i'm wrong) dat heel veel kernels nu nog in C zijn omdat ze gebaseerd zijn op oudere code. En omdat het te duur/omslachtig is om ze in c++ te herschrijven. Of dat de voordelen niet opwegen tegen de extra moeite.
Dat een Linux of NT kernel niet meer herschreven kan worden in is inderdaad niet meer dan logisch. Linux kernel 2.6 (de laatste stable branch) bevat 6 miljoen regels code C.

Zeker voor kernels heeft C nog altijd een beentje voor. Vooral omdat dingen als multiple inheritance in C++ nogal als evil wordt aanzien bij kernel dev. En de kernel is nog altijd de plaats van de computer waar alle resource managment gebeurt, ook een reden waarom C meer gebruikt wordt voor kernels. C geeft de developper een exacte controle over het geheugengebruik. In C++ worden sommige dingen al afgeschermd door de compiler.

Er zijn wel initiatieven om een kernel te schrijven in bijvoorbeeld C++ (bijvoorbeeld UnixLite, alweder een *nixkloon ja), maar die stellen meestal strenge regels op voor ze beginnen te programmeren omtrent welke features van een taal gebruikt worden en welke niet. Bij unixlite gebruiken ze bijvoorbeeld geen mi, geen exception handling, geen templates, geen operator overloading etc.

Cakeman

Legacy Member
Microsoft heeft toch ook een research project met de naam 'Singularity' lopen. In dat project willen ze als testcase een OS schrijven met managed programming languages. Voor zover ik weet gebruiken ze C# en Sing#, waarbij die laatste een derivaat van C# is; als ik het me goed herinner toch.

Bubbling Zombie

Legacy Member
Cakeman zei:
Microsoft heeft toch ook een research project met de naam 'Singularity' lopen. In dat project willen ze als testcase een OS schrijven met managed programming languages. Voor zover ik weet gebruiken ze C# en Sing#, waarbij die laatste een derivaat van C# is; als ik het me goed herinner toch.

Meer info kan je hier vinden. Leuk initiatief en hopelijk is het publiek toegangkelijk (fat chance) zodat iedereen er iets kan uit leren he :)

Psychokillah

Legacy Member
Heerlijke discussie hier moet ik zeggen. Het enige probleem is wel dat de threadstarter een beetje schrik heeft gekregen om nog een vraag te stellen denk k ;)
Misschien toch eens een goed idee om een soort guide te schrijven van de meest gebruikte programmeertalen met hun sterke en zwakke punten, mogelijkheden van toepassing,...

Is dat misschien niets om op gamedesign.be te smijten (mits enige administratie), zo'n wiki-systeem is daar ideaal voor, dan kan waar nodig aangepast en aangevuld worden, OP CONSTRUCTIEVE MANIER, THAT IS!!! :D
Misschien best een apparte page per taal en dan nog een overzichtspage met algemene info.
Wat denken jullie ? Killgore, Vich, fretn ?

killgore

Legacy Member
Voor mij geen probleem ;). Kan zonder problemen op gamedesign.be gezet worden.

Enige vereiste is dat iedereen er wat toe bijdraagt zodat niet 1 taal compleet onterecht wordt afgebroken/opgehemeld :).

Goed idee wel :p!

fretn

Legacy Member
mijn steentje aan die wikipagina: strings behandelen in C kan een ferme pain in the ass zijn, voor de rest alles toppie !

Vich

Legacy Member
@ El_L4mor:
Dat lijkt me een goede keuze :) Succes ermee!

@ The Crazy Frog:
Als zowat iedereen in een topic met argumenten ligt te gooien van het tegengestelde wat jij beweert, dan wordt het misschien tijd om even te overwegen dat je heel misschien toch geen gelijk hebt?

@ Psychokillah:
Ik ben er ook volledig voor om het op onze Wiki te zetten, waar dan van hieruit(vanuit de FAQ ofzo) naar gelinkt wordt?

@ Fretn:
Ik heb onlangs een string klasse geschreven in C++(voor COW), ik zal die eventueel er ook bijzetten :) Maar 'k heb eerst nog wat andere dingen te doen (codestyle veranderen van > 10.000 regels code, http server afwerken en laatste pass van RTTI systeem afwerken)

The Crazy Frog

Legacy Member
@ The Crazy Frog:
Als zowat iedereen in een topic met argumenten ligt te gooien van het tegengestelde wat jij beweert, dan wordt het misschien tijd om even te overwegen dat je heel misschien toch geen gelijk hebt?
Zebben allemaal ongelijk :evil:

fretn

Legacy Member
Vich zei:
@ Fretn:
Ik heb onlangs een string klasse geschreven in C++(voor COW), ik zal die eventueel er ook bijzetten :) Maar 'k heb eerst nog wat andere dingen te doen (codestyle veranderen van > 10.000 regels code, http server afwerken en laatste pass van RTTI systeem afwerken)

ik heb het over c :)

.Acku.

Legacy Member
Psychokillah zei:
Heerlijke discussie hier moet ik zeggen. Het enige probleem is wel dat de threadstarter een beetje schrik heeft gekregen om nog een vraag te stellen denk k ;)
Misschien toch eens een goed idee om een soort guide te schrijven van de meest gebruikte programmeertalen met hun sterke en zwakke punten, mogelijkheden van toepassing,...

In een ideale wereld wel, maar vind maar iemand neutraal en nuchter genoeg en met ervaring in ELKE discipline om dat te maken

Psychokillah

Legacy Member
.Acku. zei:
In een ideale wereld wel, maar vind maar iemand neutraal en nuchter genoeg en met ervaring in ELKE discipline om dat te maken

Dat zo'n guide niet volledig uitgebalnceerd zal zijn besef ik ook wel. Maar 't zal alleszinds beter zijn dan dat gekibbel en touwtrek hier.
Er moet gewoon een beetje overleg komen tussen de personen die hieraan meewerken (ik wil met plezier ook een deel op mij nemen) om te zien hoe we een taal gaan belichten.
Beste lijkt me om te beginnen bij oudere, toch nog wel gebruikte talen, en dan stilletjes den trap omhoog nemen naar de huidige, recente talen.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan