Dyskusja szablonu:Języki programowania

Treść strony nie jest dostępna w innych językach.
Z Wikipedii, wolnej encyklopedii

Nie podoba mi się wprowadzanie podkategorii języki akademickie i języki historyczne. Że co niby, akademickie się nie nadają do poważnych zastosowań? TeX np. jest napisany w Pascalu, a tu [1] jest lista firm, które stosują Smalltalka. Brakuje jeszcze tylko podkategorii wojskowe (Ada) i głupie (Brainfuck). Mciura 15:23, 22 mar 2005 (CET)[odpowiedz]

Szablon i jego podział na wspomniane kategorie jest skopiowany z angielskiej wiki. Taki podział wydaje mi się słuszny - nie chodzi tutaj o możliwości języka tylko o obszary jego zastosowań. To, że ktoś zastosował Pascala/Smalltalka do poważnego projektu nie nobilituje od razu całego języka. Gdyby ktoś napisał Office'a w Logo to ten język nadal pozostałby tym, czym jest. --VindicatoR 15:30, 22 mar 2005 (CET)[odpowiedz]
A co do TeX-a - cytuję: "Program powstał w Stanach Zjednoczonych na Uniwersytecie Stanforda" ;-) --VindicatoR 15:32, 22 mar 2005 (CET)[odpowiedz]

To, że tak jest na angielskiej wikipedii, nie oznacza wcale, że jest słusznie. W Pascalu powstały setki nieakademickich programów; Windows NT mają wbudowany interpreter Prologa; zajrzyj na tę stronę od Smalltalka i policz firmy. To, że Tobie się wydaje, że np. Smalltalk to akademicka zabawka, nie znaczy, że wszyscy muszą oglądać taki szablon. Nie rozumiem co ma znaczyć ten cytat o TeX-u. TeX został napisany w Pascalu, nawet jak w Wikipedii o tym nie piszą. Mciura 15:39, 22 mar 2005 (CET)[odpowiedz]

Cytat o TeX oznacza, że został napisany w środowisku akademickim ;-) Ale na poważnie - dlaczego traktujesz kategorię "akademickie" jako zabawki?
Sam szablon sugerował (wał, bo zmieniłem, w zgodzie z Angielską Wiki, która też już w międzyczasie (?) zmądrzała) taką interpretację, przypisując do języków akademickich Smalltalk czy Pascal, których poważne zastosowania są gdzie indziej, a w kręgach akademickich są używane głównie do szkolenia początkujących, czy Logo, które zastosowań nie ma żadnych). Squeal 14:17, 13 mar 2006 (CET)[odpowiedz]
Każdy z tych języków jest praktycznie pełnowartościowy i ja tego nie neguję. Mimo to przeważająca część ich zastosowań to zastosowania edukacyjne, akademickie, teoretyczne itp. Stąd ten podział. A tak na marginesie: gdzie byś zaliczył np. język Nemerle? --VindicatoR 15:46, 22 mar 2005 (CET)[odpowiedz]

Mam konstruktywną propozycję: jak ma być podział, to na języki imperatywne kompilowane, języki imperatywne interpretowane, języki funkcyjne, języki programowania logicznego i ewentualnie języki-żarty. Będzie encyklopedycznie, w końcu języki naturalne też klasyfikujemy według rodzin językowych, a nie na uzywane, wymierające i martwe. A Nemerle jest tak popularnym językiem, że wątpię, czy by było na niego miejsce w Twojej klasyfikacji. A w mojej pasuje jak ulał do tej garści funkcyjnych. A gdzie w Twojej klasyfikacji trafia PostScript? Mciura 19:10, 22 mar 2005 (CET)[odpowiedz]

Po pierwsze - to nie moja klasyfikacja. Ta którą zaproponowałeś jest całkiem sensowna - możnaby pobawić się w zmianę istniejącego szablonu. --VindicatoR 20:00, 22 mar 2005 (CET)[odpowiedz]

Propozycja nowego szablonu[edytuj kod]

Języki programowania

Języki imperatywne
Kompilowane: Interpretowane:

Ada | ALGOL | Asembler | BCPL | C | Clipper | COBOL | C++ | C# | D | Delphi | E | Eiffel | Fortran | Java | M++ | Modula | Oberon | Objective C | Pascal | PL/I | Simula | Visual Basic

AWK | BASIC | dBase | Icon | JavaScript | Logo | Lua | M4 | Perl | Pike | PHP | PostScript | Python | Ruby | sh | SQL | Tcl

Języki funkcyjne

Haskell | Common Lisp | Nemerle | Ocaml | Scheme | SML | Unlambda

Języki programowania logicznego

Mozart | Oz | Prolog

Języki - żarty

BeFunge | Brainfuck | Whitespace

Oto propozycja nowego szablonu. Nie gwarantuję, że dobrze zaklasyfikowałem występujące w nim języki programowania ;) Jeżeli ktoś wie w czym rzecz to niech poprawi bugi. Oto lista języków które nie pasowały mi do tabelki:


Wydaje mi się, że trzeba będzie dodać jeszcze kilka nagłówków do tabeli:

  • Języki niskiego poziomu
  • Języki bazodanowe

--VindicatoR 15:49, 1 kwi 2005 (CEST)[odpowiedz]

Co do Javy, to bardziej bym się przychylał do wstawienia jej do kompilowanych, tak jak C#, chociaż opinie mogą tu się różnić. A Basic wyrzucić do interpretowanych (Visual Basic zostawić w kompilowanych). Do programowania logicznego można dopisać Mozart i Oz. Pozdrawiam, Mciura 18:04, 3 kwi 2005 (CEST)[odpowiedz]

Dzięki za poprawki, Co do Javy i C# to trudno powiedzieć gdzie należą :/ W artykule o Javie napisane jest, że do kompilowanych, więc chciałem zachować jednoznaczność. Czekam na dalsze propozycje! --VindicatoR 19:59, 3 kwi 2005 (CEST)[odpowiedz]

BeFunge do żartów. Hasło o Javie poprawiłem, więc możesz ją przenieść bez skrupułów. Clipper produkował exeki, więc do kompilowanych, chociaż to była ściema z tą kompilacją - dołączał się wielki run-time z interpreterem, a sam język to było w zasadzie to samo, co (interpretowane) dBase IV (podobnie można kompilować Icon, ale do niego podstawowym narzędziem jest interpreter). I czy dałoby się trochę ten szablon zmniejszyć, bo kobylasty jest? Mciura 23:22, 3 kwi 2005 (CEST)[odpowiedz]

Przeniosłem Javę, dodałem BeFunge, Clippera oraz dBase. Zmniejszyłem też czcionkę, mniejszego szablonu nie da się już chyba zrobić. Jeśli ktoś zna jeszcze jakieś języki programowania nadające się do tej tabelki to proszę o propozycje :) --VindicatoR 14:24, 4 kwi 2005 (CEST)[odpowiedz]

A może coś w ten deseń:

Języki programowania

Języki imperatywne kompilowane: Ada | ALGOL | Asembler | BCPL | C | Clipper | COBOL | C++ | C# | D | Delphi | E | Eiffel | Fortran | Java | M++ | Modula | Oberon | Objective C | Pascal | PL/I | Simula | Visual Basic

Języki imperatywne interpretowane: AWK | BASIC | dBase | Icon | JavaScript | Logo | Lua | M4 | Perl | Pike | PHP | PostScript | Python | Ruby | sh | SQL | Tcl

Języki funkcyjne: Haskell | Lisp | Nemerle | Ocaml | Scheme | SML | Unlambda

Języki programowania logicznego: Mozart | Oz | Prolog

Języki - żarty: BeFunge | Brainfuck | Whitespace

--VindicatoR 14:24, 4 kwi 2005 (CEST)[odpowiedz]

Może żarty zmienić na ezoteryczne języki programowania, jak w angielskiej wikipedii, i zrobić 6 szablonów: imp.komp., imp.int., funk., log., ezot. i taki malutki nadrzędny z 5 podkategoriami. Unlambdę do ezoterycznych, do funkcyjnych można dodać Clean, Erlang, Joy i ew. Mirandę (od dawna martwą i przez Haskell zastapioną) a nawet Kogut (a co? jak jest Nemerle, to Kogut też może być), do interpretowanych np. SNOBOL4 i APL wraz z J i K, do kompilowanych np. Occam i Sather. Forth trudno wyczuć gdzie, ale chyba raczej do kompilowanych. Starczy. Mciura 17:10, 4 kwi 2005 (CEST)[odpowiedz]

Nazwa[edytuj kod]

Nazwa jest błędna. To nie jest żaden infoxow, a zwykły szablon. Proponuję przenieść i poprawić botem wszystkie wywołania. A_Bach - ΣΦ 15:31, 18 gru 2005 (CET)[odpowiedz]

Racja, ta tabelka nie jest infoboxem --VindicatoR ۞ 01:14, 20 gru 2005 (CET)[odpowiedz]

nowa propozycja[edytuj kod]

Jeżeli nikt nie zgłosi żadnych sprzeciwów, zamierzam zmodyfikować ten szablon do następującej postaci:

Wprowadza to lepszy podział. Można by to dodatkowo oczyścić i uładnić – ja się nie znam na estetyce, ale jeśli ktoś ma ochotę to jestem otwarty na propozycje. Dodek D 17:43, 7 sie 2008 (CEST)[odpowiedz]

Zmiana na lepsze. Mam tylko wątpliwości czy Lisp i PL/1 kwaliwikują się do historycznych. pl/1 jest wciąż używane i sprzedawane przez ibma np.[2]. Jeśli APL traktować jako rodzinę języków, a nie pierwszy język z tej rodziny to również tam nie pasuje. royas (dyskusja) 13:53, 15 sie 2008 (CEST)[odpowiedz]

Szablony i niedociągnięcia w nich[edytuj kod]

Szablon trudno budować jako podział języków. Każdy ze specjalistów jest w stanie przeczytoczyć inny (także właściwy) podział. Bazując na różnych podejściach i różnej literaturze źródłowej można wyprowadzić bardzo wiele podziałów. I tak można zrobić pierwszy podział ze względu na sposób przetwarzania: - kompilowane - interpretowane - tłumaczone (do tej pory się stosuje - np. duża część powszechnie używanych implementacji COBOLA jest translatorami do C) - kompilowane do kodu pośredniego, a później interpretowane (wszystkie .NET i JAVA).

Kolejnym paradygmatem może być model języka (za Seif Haridi, Peter Van Roy "Programowanie, Koncepcje, Techniki, Modele"), podział ogólny bo nie dokońca pamiętam, a książki nie mam pod ręką: - logiczne (Prolog) - funkcyjne (Haskell, F#) - proceduralne (C, Perl) - strukturalne (Pascal) - obiektowe (C++, Java, Smalltalk).

Do tego mamy języki deklaratywne jak SQL, XML czy HTML.

Mam trudność w sklasyfikowaniu tego jezyka --Dfs (dyskusja) 15:09, 12 lis 2012 (CET)[odpowiedz]