C, Lisp en Perl zijn traditionele hacking programmeertalen in de GNU/Linux cultuur; Python, PHP, Java en C++ hebben recent nieuwe grond verworven.
Een gebruikelijke naam van de taal.
Geeft aan hoe geschikt de taal is voor mensen met weinig programmeerervaring. Een taal gemarkeerd met ``ja'' zou uitvoerbaar moeten zijn als eerste programmeertaal voor een beginner.
Hoe snel je applicaties naar alle waarschijnlijkheid zullen draaien wanneer je ze in productie neemt. De performance hangt meer af van je algorithmische programmeervaardigheden dan de feitelijke taal. Als vuistregel zijn C, C++ en Fortran soms noodzakelijk omdat ze een betere performance bieden dan andere talen - andere keren zijn ze wellicht ongeschikt voor het gewenste doel. (Een idee voor het niet wetenschappelijk ``benchmarken'' van de programmeertalen zou zijn een eenvoudig sorteeralgoritme te implementeren in alle programmeertalen en de uitvoertijden ervan te vergelijken. Hiermee wordt natuurlijk niet de performance van de feitelijke taal gemeten, aangezien dat concept geen zin heeft, maar slechts de implementatie. Natuurlijk geen erg betrouwbare of grondige methode, maar het zou een voorbeeld kunnen geven van het verschil in uitvoertijden van de verschilende talen. Kan iemand me hiermee helpen?)
Object geöriënteerd programmeren is een belangrijk paradigma dat meer aan populariteit wint. In object geöriënteerd programmeren zijn gegevensstructuren en algoritmen in eenheden geïntegreerd, vaak classes genoemd. OOP staat vaak in contrast met procedureel programmeren (waarin aparte algoritmen en gegevenstructuren worden gebruikt). Het is niet strict afhankelijk van de taal: je kunt OOP doen in talen die niet als zodanig worden opgesomd (zoals bijvoorbeeld C), en in de procedurele stijl programmeren in talen die gecatalogiseerd zijn als OOP. Ik heb talen als OOP gecatalogiseerd die speciale mogelijkheden hebben of add-ons om OOP te vergemakkelijken. Functionele talen (zoals bijvoorbeeld Lisp) zijn een wat andere soort. - functioneel programmeren is onder andere een superset van OOP. Logisch programmeren (Prolog), ook declaratief programmeren aan de andere kant is in vergelijkbare zin niet gerelateerd aan de andere typen programmering.
Eerder afhankelijk van de gebruikte tools dan de feitelijke taal. Er is ook een HOWTO over GUI development voor Linux, alhoewel het verouderd is. Met een goed grafisch hulpmiddel kun je RAD doen. RAD kan krachtig zijn wanneer bovendien gebaseerd op hergebruik van de code, dus vrije software zou een goed begin kunnen vormen.
Het benoemen van de programmeergebieden waarvoor de taal het vaakst wordt gebruikt. Andere goede (en slechte) gebruiken bestaan ook, maar ze zijn minder kenmerkend.
Extra informatie over de programmeertaal, zoals mogelijkheden en dialecten.
Perl Beginner: Ja - OOP: Ja Voorbeelden: Scripting, sysadmin, www Opmerkingen: Krachtig voor het afhandelen van tekst en strings Python Beginner: Ja - OOP: Ja Voorbeelden: Scripting, applicatie scripting, www Opmerkingen: TCL Beginner: Ja - OOP: Nee Voorbeelden: Scripting, sysadmin, applicaties Opmerkingen: PHP Beginner: Ja - OOP: Ja Voorbeelden: Www Opmerkingen: Populair voor webdatabases Java Beginner: Ja - OOP: Ja Voorbeelden: Cross-platform applicaties, www Opmerkingen: Uitgestrekt naar nieuwe gebieden, bv. e-commerce infrastructuur Lisp Beginner: Ja - OOP: Functioneel Voorbeelden: Emacs modes (voor Elisp), AI Opmerkingen: Varianten Elisp, Clisp en Scheme Fortran Beginner: Nee - OOP: Nee Voorbeelden: Wiskundige (wetenschappelijke) applicaties Opmerkingen: Varianten f77 en f90/95 C Beginner: Nee - OOP: Nee Voorbeelden: Systeemprogrammering, applicaties Opmerkingen: C++ Beginner: Nee - OOP: Ja Voorbeelden: Applicaties Opmerkingen:
Ook shells bieden een belangrijke programmeeromgeving. Ik heb ze niet behandeld omdat ik dit terrein nog niet zo door en door begrijp. Kennis van shells is voor ieder belangrijk die regelmatig onder Linux werkt, nog meer zelfs voor systeembeheerders. Er zijn tussen shellprogrammering en andere soorten scripting overeenkomsten, vaak kun je er dezelfde doelen mee bereiken, en heb je de optie te kiezen tussen de shell en een aparte scripttaal. Tussen de meest populaire shells bevinden zich bash, tcsh, csh, ksh en zsh. Je kunt basisinformatie over je shell krijgen met de opdracht man, zoals bijvoorbeeld man bash.
Andere te vermelden talen: AWK, SED, Smalltalk, Eiffel, Ada, Prolog, assembler, Objective C, Logo, Pascal (p2c converter)