Nim vs Crystal vs Go

TE
  • Rejestracja:ponad 5 lat
  • Ostatnio:ponad 5 lat
  • Postów:8
0

Czy może ktoś podać jakiś benchmark z tymi językami programowania, aby sprawdzić który z nich jest wydajniejszy? Wszystkie są kompilowane, chyba nie mają wskaźników ale mają odśmiecanie pamięci.
https://nim-lang.org/
https://crystal-lang.org/

vpiotr
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
0

Z uwagi na to ze Nim kompiluje sie do C zalozylbym ze przy zadaniach bez dynamicznej alokacji bedzie wygrywac Nim.

Natomiast jesli chodzi o GC to juz raczej dwa pozostale. Ale nie mam i nie znam na to benchmarkow.

edytowany 1x, ostatnio: vpiotr
hauleth
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:12 dni
0

@vpiotr: AFAIK nie da się używać Nim bez GC, więc nie ma to znaczenia.

@tedy wszystkie te języki mają wskaźniki, ale nie mają arytmetyki wskaźników (GC w końcu działa tylko na dynamicznie alokowanej pamięci, więc musisz mieć jakiś wskaźnik na nią). Co do pytania w temacie, to szybszy w jakich zastosowaniach? Czy do szybkości wliczasz czas developmentu albo refactoringu? Jaki program chcesz napisać? Czy znasz którykolwiek z tych języków lub ich "języki rodziców" (Python w przypadku Nim i Ruby w przypadku Crystal).


vpiotr
AFAIK da sie, nawet w programach wymagajacych alokacji: https://forum.nim-lang.org/t/2489
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:około miesiąc
  • Lokalizacja:Silesia/Marki
  • Postów:5505
0

Jeśli chodzi nowe języki programowania oraz niszowe języki programowania to w tym zestawieniu tylko Rust dogania C i C++, a Go jest niesamowice wolny. Wolniejszy nawet od Javy w której na co dzień programuję.


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
baant
najbrzydszy wykres jaki widziałem w życiu ._. gorzej sie nie dało tych języków oznaczyć
hauleth
@baant: co rozumiesz przez to? Bo ja specjalnie nie widzę innego sposobu, zwłaszcza przy długich nazwach języków.
baant
Można np dać raz pod spodem a nie 10 razy w tle zaciemniając wykres
no_solution_found
  • Rejestracja:prawie 18 lat
  • Ostatnio:17 dni
1

IMO to nie ma znaczenia, bo często to algorytmy są wolne a nie języki programowania. Do czego potrzebny jest Ci ten benchmark? Pod jakim kątem? Poza tym np sieć potrafi tak spowolnić, że to będzie obojętne co chodzi pod maską. No chyba, że piszesz coś baaardzo niskopoziomowego, to wybiera się język pod usecase. Bez szerszego kontekstu ciężko powiedzieć.


TE
  • Rejestracja:ponad 5 lat
  • Ostatnio:ponad 5 lat
  • Postów:8
0

Uczę się dopiero C i chciałem tworzyć programy okienkowe. Na razie wybrałem C potem nauczę się GTK3. Ale interesuje mnie drugi język programowania, który jest prostszy od C, ma czytelną składnie, jest bardziej nowoczesny, czyli posiada GC, brak wskaźników, mniejsze problemy z wyciekami pamięci, jest kompilowany, brak nullów i ma statyczne typowanie. Języki skryptowe mnie nie interesują. A do maszyn wirtualnych jvm. clr jakoś nie mam przekonania, zawsze te programy desktopowe działały wolno.

Wibowit
  • Rejestracja:około 20 lat
  • Ostatnio:około 2 godziny
1

A do maszyn wirtualnych jvm. clr jakoś nie mam przekonania, zawsze te programy desktopowe działały wolno.

Scala ma wersję Native https://github.com/scala-native/scala-native podobnie jak Kotlin, ale jest narzędzie, które potrafi przekompilować już istniejące projekty Javowe, Scalowe, Kotlinowe, Clojurowe, etc do samodzielnego pliku wykonywalnego. Jest to native-image z GraalVM.
Instrukcja użycia native-image: https://www.graalvm.org/docs/reference-manual/aot-compilation/
Reszta dokumentacji: https://www.graalvm.org/
Repo GraalVM na GitHubie: https://github.com/oracle/graal

Szybkość takiej Javy skompilowanej AOT (ahead-of-time w przeciwieństwie do JIT = just-in-time) jest niestety obecnie sporo niższa niż zJITowanej: https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/java-substratevm.html jednak AOT znacznie przyspiesza uruchamianie programów, np tutaj koleś skompilował Javowego klienta HTTP i ten staruje szybciej niż cURL: https://sites.google.com/a/athaydes.com/renato-athaydes/posts/a7mbnative-imagejavaappthatrunsin30msandusesonly4mbofram

Scala-Native już teraz osiąga wysoką wydajność, porównywalną z rozgrzaną JVMką: https://github.com/scala-native/scala-native/releases/tag/v0.4.0-M2 a przebija ją mocno w czasie uruchamiania (Scala-Native nie potrzebuje JITa oczywiście). Za jakiś czas (kilka lat?) GraalVM AOT powinien dogonić Scala-Native będąc jednocześnie dużo bardziej uniwersalnym (Scala-Native nie obsługuje zwykłych JARów). Oracle mocno w Graala inwestuje.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 4x, ostatnio: Wibowit
Zobacz pozostałe 8 komentarzy
Wibowit
@hauleth: Tak mówi Wiki https://en.wikipedia.org/wiki/Type_class : Type classes first appeared in the Haskell programming language.
TE
A to nie jest tak z tą obiektowością z Gnome, że odpowiada za nią inny język taki jak Vala czy Ceylon lub JavaScript, a rdzeń Gnome to już tylko strukturalne C? Kiedyś zajrzałem na github do projektu Gnome i składał się właśnie z tych kilku języków programowania do tego dochodziły jeszcze skrypty w Pythonie i Lua.
Wibowit
Obiektowość możesz mieć w każdym języku. W niektórych ta obiektowość jest po prostu ułomna.
hauleth
Nie, Vala się kompiluje do C i używa GObject do implementacji obiektowości (czyli to obiektowość w C).
hauleth
@Wibowit: ok, dzięki. Myślałem, że to starsze jest.
vpiotr
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
1

Jesli GUI jest Twoim celem to sprobuj:

  • Free Pascal plus Lazarus
  • C++ i Qt lub wxWidgets
  • Java plus Swing i Netbeans
Zobacz pozostałe 7 komentarzy
Wibowit
Wymyślanie nowego dla samego wymyślania nie ma sensu. Trzeba mieć cel. Znaleźć problem, zapotrzebowanie, konkretne zyski, itp IntelliJ jest naklepany w Swingu i działa świetnie. Visual Studio jest niby napisane w nowoczesnym WPF (chyba, nie jestem pewien), ale Rider napisany w Swingu (bo to też IntelliJ Platform) działa nawet lepiej (o ile Rider wspiera dany typ projektu). Nie sądzę, by Swing był jakąś kulą u nogi przy tworzeniu porządnego IDE. W przypadku innych zastosowań może być inaczej, więc trzeba się zastanowić co chcemy zrobić. Być może HTML5 + JS będą najlepsze.
TE
Dynamiczne typowanie w JS to chyba nie najlepszy pomysł do dużego backendu i programów graficznych. Ostatnio Gnome miało problemy z pamięcią przez JS.
Wibowit
W praktyce wodotryski HTML5 + JS oznaczają duże zużycie zasobów. Wystarczy przyjrzeć się ile zasobów zjadają przeglądarki gdy wchodzisz na zawalone JSem, CSSem, etc strony. Trzeba więc wybrać: albo szybkie GUI bez wodotrysków (jak Javowy Swing) albo pełno wodotrysków za cenę zużycia zasobów (jak w HTML5 + JS). Jedno i drugie razem ciężko osiągnąć, tzn wodotryski, które nie pochłaniają zasobów. Nie wydaje mi się też, by programiści byli jakoś specjalnie premiowani np za to, że stronka zżera trochę mniej baterii na telefonie. Dopóki jest w miarę płynnie to się nie przejmujemy
TE
Teraz byle stronkę każdy dzieciak potrafi stworzyć programami graficznymi, chyba nawet prosty backend da radę w takim Wix. https://mambiznes.pl/poradniki/zrob-www-czyli-programy-tworzenia-stron-internetowych-77136 Ale do Javy i C# już się nie dam namówić, po prostu nie lubię tych języków.
Wibowit
No i to dalej jest zaimplementowane jako stronka w HTML5 + JS.
somedev
  • Rejestracja:prawie 7 lat
  • Ostatnio:prawie 5 lat
  • Postów:666
1

@tedy: odpowiadam na komentarz, bo nie chce schodzić z merytoryką do komentarzy gdzie miejsce offtopu.

Pascal czy Lazarus a może nawet Delphi zupełnie nie jest tym samym co C. Niemniej też bym nie szedł w tym kierunku, bo Embarcadero to troll licencyjny i trzeba bulić ciężkie pieniądze za nie do końca dopracowane narzędzia (Delphi), a Lazarus nie nadaje się do użycia produkcyjnego (mimo, że są tutaj zapaleńcy co walczą dzielnie i tworzą w tym soft, ale to wszystko hobbystycznie, niszowo). Warto liznąć C++, ale nie nauczysz się go łatwo i mało kto tak na prawdę go potrafi. Ja bym polecił Tobie C# - jest multiplatformowe, no poza tym, że GUI to jedynie dobre na Windows a GUI multiplatformowe jeszcze w powijakach (Avalonia UI), lub Jave. Jeśli masz złe doświadczenia to z programem danych a nie z jvm czy clr - dobrze napisany soft działa szybko i wcale nie tak łatwo zepsuć mu wydajność. Sam używając C# pisałem systemy real time i serio się da i obecnie rozbudowane programy będą działały szybciej niż kompilowane, szczególnie jeśli kod pisze początkujący.

Zobacz pozostałe 7 komentarzy
somedev
Generalnie obecnie C nadaje się do pisania kompilatorów (ale coraz mniej), do pisania softu na pralki oraz programowania systemowego. Sens języków kompilowanych poza specyficznymi zastosowaniami jest coraz mniejszy,
TE
Tego z tym LLVM nie wiedziałem. Gdy chciałem skompilować kompilator Swift na moim uniksie, wymagało to pobrania i skompilowania ponad 4000 plików. To trochę trwało.
Wibowit
No ale JVM nie napiszesz w czystej Javie, a CLR nie napiszesz w czystym C# tak czy nie? - GraalVM to Java napisana w Javie (np GC w Javie: https://github.com/oracle/graal/tree/master/compiler/src/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc ). W środowisku .NETowców proponowano ten pomysł, ale MS go odrzucił (argumentem mniej więcej "po co? nie opłaca się"): https://github.com/dotnet/coreclr/issues/17576
TE
Myślałem, że czas pracy programisty jest ważny i z czasem koszt napisania CLR w C# zwróciłby się Microsoftowi. A może chodziło tu o wydajność. GraalVM jest dużo wolniejszy od JVM? Nie widzę tam benchamrku porównawczego tych dwóch VM-ek.
Wibowit
Stosunek wydajności GraalVMa (napisanego w Javie) do HotSpota (napisanego w C++) streściłem tutaj: https://github.com/oracle/graal/issues/1069#issuecomment-473649871 Twitter używa GraalVMa (chyba Community Edition) dla kilku procent dodatkowej wydajności - te kilka procent w skali Twittera to dużo, na tyle dużo żeby otworzyć zespół ekspertów od kompilatorów.
MA
MA
  • Rejestracja:około 6 lat
  • Ostatnio:ponad 3 lata
  • Postów:30
0

Z takich waznych rzeczy pamietaj ze ani nim ani crystal nie sa jeszcze w stabilnych wersjach. Jesli juz celujesz w cos "niszowego" to proponuje RUST'a lub właśnie Golang'a (chociaż sam jestem zhajpowany na nim'a ale raczej wole nie pisać czegoś co ma trafić na produkcję w rozwiązaniu które nie jest jeszcze w wersji stabilnej)

edytowany 1x, ostatnio: machineko
Zobacz pozostałe 3 komentarze
hauleth
Na OpenJDK. Poza tym to nie ma znaczenia, bo to środowisko uruchomieniowe, czyli w praktycznie cały kod będzie działał jak działał na Oracle JVM o ile nie używa Oraclowych klas.
TE
I te małe firmy które do tej pory nie płaciły za wsparcie Oracle, przeniosą cały swój kod na darmowy OpenJDK, aby nie rezygnować z Javy? Czy będą ciągle tkwiły na Javie 8?
hauleth
A skąd mam wiedzieć? To od tych firm zależy. Poza tym JVM to nie moje kredki, po prostu prostuję stwierdzenie, że "Oracle wprowadziło opłaty za Jave od wersji 11+".
KamilAdam
Oracle będzie brało kasę tylko za wsparcie LTS. Jak nie chcesz płacić to trzeba migrować na nowszę wersję lub przejść na Red Hat OpenJDK
Wibowit
Wszyscy się przenoszą na OpenJDK. Migracja z Oracle JDK na Open JDK nie jest jakoś specjalnie bolesna, bo w najnowszych wersjach te JDK prawie niczym się nie różnią. Niech ktoś spróbuje wymienić jakieś najważniejsze różnice w najnowszych wersjach LTS OpenJDK i OracleJDK (czyli w 11) i ocenić ich problematyczność. Ja siedzę w JVMie od lat (najpierw Java, teraz Scala) i nie wiem, bo mnie to nie obchodzi :]
Spearhead
  • Rejestracja:prawie 6 lat
  • Ostatnio:4 minuty
  • Postów:1002
0

Mój kolega programista Javy mówi do mnie, że wypadałoby się w końcu nauczyć C++ bo wypada go znać. Skoro on go nie umie, a zawodowo programuje w Javie przeszło 20 lat to raczej nie biorę się za C++.

To taki trochę dziwny argument - skoro jest programistą Javy to żadna niespodzianka, że nie musiał nigdy uczyć C++. Skoro zaś sam nie chcesz zostać Javowcem, tylko zdryfować w jakieś kompletne odmienne rejony z programowaniem aplikacji okienkowych, to nie wiem czemu tak bardzo się inspirujesz tym co on robił albo i nie robił. Qt/wxWidgets to solidne biblioteki.

Zobacz pozostałe 15 komentarzy
somedev
Stackoverflow Jobs pokazuje, że dla JS 2175, Javy jest 1968 ofert, dla C# 712 Scala 299. Fakt dla javy jest ponad 2 razy więcej ofert ale .NET jest młodszy to raz, a dwa dopiero wkracza w multiplatfromowość. Późno, ale produkcyjnie już ładnie działa. Nie wróże przepisywania czegokolwiek z JS na Jave, ale sporo green fieldów robi się w .net core. Natomiast dla Rusta są 32 oferty, nim - 0, crystal -10 - te 3 języki praktycznie nic nie znaczą i nie zapowiada się, by nauka miała jakiś komercyjny sens. Nawet jak sam chcesz startupa pisać to bym ich nie wybrał.
somedev
Dla Golang jest 850 wyników, ale Go jest stworzony do zupełnie innej klasy problemów niźli C# czy Java - zależy co chcesz pisać (a tego jeszcze ani razu nie napisałeś). Jakbym miał pisać coś komercyjnego niskopoziomowo ale nie na mikroklockach gdzie każdy bajt się liczy to bym pewnie popatrzył na Go, bo z C++ mam złe doświadczenia, a C jest prymitywny. Rusta czy inne wynalazki nie tykał bym ze względu, na niepewność - niech ktoś z większymi zasobami kasy przeciera szlaki. Pchanie się w coś jeszcze nie popularnego to jak pchanie się w coś już nie popularnego jak np. w pascal
TE
Idąc twoim tokiem rozumowania, to taki Kotlin czerpie wiele z C# to wydaje się być dużo lepszym wyborem niż C#. Nie wiem ile jest jego ofert pracy na Stackoverflow Jobs, ale pewnie podobnie co Scala. Ale jeżeli w Go jest więcej ofert pracy niż w C# i też piszą w nim backend to może być to najlepszy wybór. Poza płatnym IDE GoLand od JetBrains jest jakieś darmowe które dobrze sprawdza się z tym językiem? Na początek nauki i do swoich prostych projektów darmowe IDE powinno wystarczyć.
somedev
Kotlin jest bardzo związany z JVM. Ja mam spore doświadczenie z pisaniem pod CLR i z pracą w tym ekosystemie więc go szczerze polecam. Z Kotlinem nie pracowałem w ogóle, a z JVM nie komercyjnie więc nie polecam, aczkolwiek Kotlin to może być dobry kierunek, ale tego nie gwarantuje. Ofert pracy dla C# deva w popularnym polskim portalu to koło 100 na ten moment - Golang - ani jednej oferty - to troszkę mówi o tym jaki polski rynek jest i też pytanie gdzie chcesz pracować. A jeśli to ma być pierwszy język to to olej i pisz w czymkolwiek bo i tak zmienisz albo nauczysz się
somedev
nowych języków. Już wielokrotnie pisałem, że ja komercyjnie używam koło 10 języków a pewnie z 2 razy tyle używałem w swoim życiu zarówno komercyjnie jak i badawczo.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 6 godzin
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4707
9

Wybieranie języka po wydajności to jeden z głupszych pomysłów - zwłaszcza jeśli człowiek się uczy.
Generalnie jak jeden jezyk nie jest 10 razy wolniejszy od drugiego to zwykle spokojnie da się zastąpić.
Warto raczej zaczynac od języków wyższego poziomu, a potem jesli potrzeba spojrzeć w dół bagna.

Jak chcesz tworzyć reponsywne programyu okienkowe to umiejetności programistyczne są dużo ważniejsze od jezyka.

Jezyki statycznie kompilowane wcale nie są by default szybsze od tych na VM - na razie różne vmki są średnie, ale formalnie VMki powinny być szybsze od statycznej kompilacji - w koncu są w stanie zoptymalizowac dużo wiecej, bo wiecej wiedzą o kodzie. Fakt,na razie tak bywa dość rzadko. Słabości VM to zużycie pamięci, które praktycznie zawsze będzie większe od native.
GC może czasem powodować, że program jest szybszy dla użytkownika niz ten z ręcznym odśmiecaniem.

Z tej całej listy to Crystal wygląda najciekawiej. Nim nie znam, ale wygląda jak python dla laika. Go mnie rozczarował (rozjazd hype z rzeczywistością, to nie jest zły język, ale niektórzy ludzie krzyczeli, że wyprze javę... - chyba tylko na zasadzie, że język gorszy może być wyparty przez jeszcze gorszy :-) ).

Ale tak szczerze, jak chcesz robić okienka, to najpierw pytanie jaki rodzaj okienek, a potem wybierz coś w czym te okienka się robi wygodnie i będziesz miał przykłady.
Jak chcesz drugi jezyk inny niż C to polecam:

  • javę ze względu na tony przykładów i okienka i IMO lepiej wziąć starego Swinga niż javafx (wiecej przykładów),
  • kotlin - bo to ciekawy i prosty jezyk ze zwięzła składnią (i okienka na JVM możesz robić),
  • haskell - bo najciekawszy i IMO najbardziej przyszłościowy - ale w tym okienek nigdy nie robiłem i nie widziałem,
    (btw. nie sądze, że w przysżłości bedziemy programować w Haskellu, ale nowsze jezyki coraz bardziej się haskelizują i tworzone sa ciekawe jezyki na bazie haskella (Idris, purescrupt, elm). A Scala nadal rżnie z haskella :-).

jeden i pół terabajta powinno wystarczyć każdemu
edytowany 3x, ostatnio: jarekr000000
Zobacz pozostałe 19 komentarzy
Wibowit
Zresztą jeśli chodzi o wojenki wewnątrz obozów Javowych czy .NETowych to można też przyjrzeć się DDD+CQRS+ES. Ewangeliści tego kierunku twierdzą, że leczy raka i gwarantuje sukces każdego projektu, a bez tego projekt będzie od razu greenfield legacy. Sceptycy twierdzą, że DDD+CQRS+ES to przerost formy nad treścią i strata czasu. Czy ta niezgodność powoduje panikę? Raczej nie.
Wibowit
No właśnie, @jarekr000000 miesza w Javie, ale nie tak mocno jak John de Goes w Scali :]
jarekr000000
@jarekr000000: w zasadzie to nie mieszam, bo tylko propaguje lokalnie pomysłyi biblioteki, które już dawno ktoś zrobił. John De Goes jednak dużo sam wymyśla. (chociaż scalowcy IMO są mniej oporni od javowców na nowości).
jarekr000000
Wczoraj kolejny javowiec mi płakał, że ma pozmieniać różne ciągi null checków (4-5 poziomów zagłebień - sonar płakał) na Optionale. Przecież jakie to będzie niewydajne. Soft ma pięciu użytkowników (backend/ backoffice) i czyta po 2000 tłustych rekordów z bazy danych, żeby je filtrować i stronicować w javie(tadaaam). Działa to dramatycznie źle, ale nie opłaca sie poprawiać dla tych pięciu ludzi. (No, ale optionale na pewno spowolnią...)
hauleth
Jeszcze jedno - języki programowania nie mają szybkości, tylko ich implementacje ;)
TE
  • Rejestracja:ponad 5 lat
  • Ostatnio:ponad 5 lat
  • Postów:8
1

Ostatecznie zrezygnowałem z nauki C i wybrałem Go, na razie korzystam z kursów z youtube, aby mieć jakieś podstawy. Szukam dobrych darmowych tutoriali do Go poza tym ze strony Go.

Co myślicie o tym kursie, dobrze Polak tłumaczy podstawy Go? Ciekawie skonfigurowane jest VSCode do Go.
Czytałem na blogu developera Google, który ma ponad kilkunastoletnie doświadczenie w programowaniu z Javą i JVM, że Go może być przyszłością.
https://przemelek.blogspot.com/2018/10/czas-porzucic-javae.html

edytowany 1x, ostatnio: tedy
baant
  • Rejestracja:ponad 11 lat
  • Ostatnio:2 miesiące
  • Lokalizacja:Wrocław
  • Postów:524
0

Książka The Go Programming Language jest ok + na ich stronie jest pełno tego: faq, effective go no i specyfikacja. Tak na start pewnie wystarczy :D Kursy video nie dla mnie, więc sie nie wypowiem. Co do wychwalania golanga to akurat opiniami devów z googla bym się nie sugerował za bardzo

  • w tym wpisie, który podałeś nie ma ani jednego argumentu za Go ._. jedynie narzekanie o oraclowych jdk
edytowany 1x, ostatnio: baant
Zobacz pozostały 1 komentarz
baant
nie wiem o których mówisz, ja widze więcej niż dwie
baant
jeśli o polskich to jest czerwona i biała. Biała to ta o której pisałem, jest spoko. Czerwona jest średniawa, na pewno nie na start z językiem
baant
no to jak wyzej
TE
Mój wpis był przed twoim drugim.
Wibowit
  • Rejestracja:około 20 lat
  • Ostatnio:około 2 godziny
2

https://przemelek.blogspot.com/2018/10/czas-porzucic-javae.html

Pffff. Gość napisał mniej więcej: nie umiem zainstalować Javy, więc przerzucę się na Go. No ludzie, trzymajcie mnie. Jak ktoś zbuduje Javę z oficjalnych źródeł to to jest Java, a nie jakieś UFO, więc można instalować. Zresztą zajrzałem głębiej do blogasa tego kolesia i wychodzi na to, że dalej programuje w Javie, a do Go nie wraca mimo iż pisał o nim w 2011 roku.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
Zobacz pozostałe 24 komentarze
TE
Zobacz sobie sortowanie bąbelkowe w C#, Javie vs inny nowszy język programowania.
SA
Uchowaj Boże od pracy z ludźmi, którzy oceniają języki pod kątem implementacji sortowania bąbelkowego.
vpiotr
J chyba zaoralo reszte
sugar_hiccup
@somedev: dla ścisłości Brian Kernighan sam przyznał, że nie brał udziału w projektowaniu języka C.
no_solution_found
  • Rejestracja:prawie 18 lat
  • Ostatnio:17 dni
0

ja ogólnie to zgadzam się ze zdaniem @jarekr000000. Język powinno się wybierać pod konkretny case + jak łatwo jest mi wejść w tę technologię. Nie na odwrót. Lubię Go, ale okienek bym w nim nie pisał :)


Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.