Najgorszy język, w jakim kiedykolwiek pisaliście

Najgorszy język, w jakim kiedykolwiek pisaliście

Wątek przeniesiony 2022-08-02 15:22 z Off-Topic przez cerrato.

W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:około 6 godzin
  • Postów:3539
2

Tak jak w temacie - w jakich językach musieliście pisać i wspominacie to z największą niechęcią? Oczywiście pytanie subiektywne, można umieszczać język, który mnóstwo ludzi lubi i używa, ale z jakiegoś powodu wam nie podszedł.

Zacznę:

  1. Wszystkie języki bazodanowe, typu PL/SQL, t-SQL. Po prostu nienawidzę ich, a swego czasu musiałem sporo procedur wyklepać.
  2. Autorski język wewnętrzny pewnej firmy, kompilowany do JSa. Każdy, kto kiedykolwiek pracował na wewnątrzfirmowych językach będzie wiedział, jak bardzo to boli. Posiadał wady JSa bez jego zalet.
  3. Autorski język wewnętrzny pewnej firmy, tym razem składnią przypominał BASICa. I tak, było GOTO.
  4. Python 2.7 . Nie wiem czemu, bo parę lat później musiałem klepać Sparka w Pythonie 3.6 i już było spoko, nawet przy pisaniu trochę dłuższych kawałków.

A wy jakie macie doświadczenia?

LI
Nigdy nie rozumiem, po co firmy robią swoje własne języki? Naprawdę się zdarza, że ma to sens, bo robią coś wyjątkowego, czy przeważnie to overkill?
W0
Zdarza się, że ma to sens. Natomiast dużo częściej się zdarza, że jakiś architekt popłynął. Czasem i jedno, i drugie. Np. punkt drugi z mojej listy biznesowo miał sens (chodziło o dorzucenie pewnych elementów składni związanych z matematyką i statystyką), po prostu wykonanie było tragiczne.
S9
  • Rejestracja:ponad 4 lata
  • Ostatnio:około 2 lata
  • Lokalizacja:Warszawa
  • Postów:1092
1

C++


S4
Miętki jesteś.
AR
pewnie jakieś wypaczone środowisko... dev c++ ?
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:3 minuty
  • Postów:8398
4
  • Bash.
    Fajnie się pisze komendy i ogólnie ma swój urok (np. fajnie jest, że można napisać komendę i zrobić pipe do drugiej komendy), więc nie to, że jest całkiem zły. Ma swoje momenty. Jednak wszelkie instrukcje sterujące typu ify, pętle, zmienne, to jakaś dzikość. Kto wymyślił taką składnię i jak to zapamiętać? Bash jest wygodny do pisania komend, jednolinijkowców, ale nie do pisania całych skryptów.

  • PHP - kiedyś lubiłem, fajnie się tego uczyło i pisało, jednak kaman. To fraktal złego wzornictwa. Stóg, igła, igła stóg? Każda funkcja z innej parafii. I chyba nigdy do końca nie wprowadzili obiektówki (tj. oczekiwałbym, że jak już jest OOP, to przepiszą bibliotekę standardową na obiektówkę, a nie...)

  • Objective-C - koncepcyjnie spoko, Smalltalkiem inspirowany zdaje się, jednak składnia, sposób wywołania funkcji, podawania argumentów, to jakaś dzikość (chociaż Smalltalk też, co widziałem, to koncepcyjnie spoko, ale składnia dzika).

  • QBasic - akurat fajnie się pisało, ale to był mój pierwszy język i później przeszedłem do bardziej cywilizowanego Pascala. Natomiast w basicu cóż, używało się goto xD a to jest "uważane jako raniące" ;)


edytowany 2x, ostatnio: LukeJL
Sensacyjny Sebastian
Jak widziałbyś przepisanie biblioteki standardowej na obiektówkę?
SE
Kiedys slyszalem, ze bash to taka odwrotnosc jazdy za rowerze :P
S4
  • Rejestracja:około 3 lata
  • Ostatnio:ponad rok
  • Postów:1268
0

Perl, Power Script, JS (ale bardzo mało pisałem), Centura (to było uwno pierwszego sortu).

ZD
  • Rejestracja:około 3 lata
  • Ostatnio:ponad rok
  • Postów:2310
0

Mogą być własne?

Własny port języka Apache Velocity VTL do C++
Choć akurat wersja C++ nigdy nie przerosła swojej roli, być może do dziś generuje proste bloki tekstu, wiec to tylko wsadziłem świadomie jako paradoks.

Ale własnymi paluchami przyczyniłem się do przerośnięcia roli tego języka w Javie na jednym z wdrożeń. Jest to niestety język tuiringowo pełny (ma ustawienia zmiennych itd), i skusiło robić w nim to, do czego nie jest przeznaczony, np podsumy raportów. Oczywiście zaczęło się niewinnie, ale potem "panowie doróbcie drugi poziom sumowania", "dołóżcie warunek" itd ...
Od tej pory do templetowania wydruków zawsze wybiorę język czysty, gdzie dostarczone obiekty są wyłącznie odczytywane, i w którym nie można dorabiać algorytmów, które naturalnie nie tkwią w modelu, np stringtemplate (zyskałem przynajmniej dwa środowiska: JVM i .NET)

Marnie wspominam TCL (tak, ten TCL) wbudowany jako język skryptowania polskiego "ERP" czasów znakowych. O dziwo, wybrali go w latach, gdy już były bardziej sensowne języki wbudowane (choć i tak było to wielokrotnie lepsze od ich poprzedniego silnika).

Romansowanie z PHP, z którym się nigdy nie złączyłem trwale


If you put a million monkeys at a million keyboards, one of them will eventually write a Java program - the rest of them will write Perl
edytowany 3x, ostatnio: ZrobieDobrze
W0
Mogą być własne? - niby można, ale hejtowanie własnego rozwiązania to taki wyższy poziom już chyba :D
ZD
To nawet jest taka "korporacyjna" kartka, z punktacją za kablowanie kolegów w różnych sytuacjach. Za zakablowanie siebie też jest duży skill.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4706
12
  1. BASIC na C64
    Tego się nawet nie da opisać jak ktoś nie pisał w tych basicach z lat 80tych na ośmiobitowce.
    Numerowanie linii, wszystkie zmienne globalne, a do tego tylko dwie pierwsze litery z nazwy zmiennej się liczą, więc DUDA = 5 to to samo co DU = 5 i DUP = 5. Można powiedzieć, że język naturalnie karał za długie nazwy zmiennych.

  2. PL/SQL - ludzie do dzisiaj w tym piszą, a IMO powinno to być zabronione konwencją genewską. Nie musiałem w tym wiele pisać, ale każde moje spotkanie kończyło się niedowierzaniem, że coś mosze być aż tak głupie i niespójne. Do dziś pamiętam herezje taki jak parametry OUT, absurdalny debug itp.

  3. COBOL - w zasadzie tylko czytałem czyjeś kody i pisałem drobne zmianny na potrzeby eksperymentów. Początkowo nie wierzyłem w statystyki mówiące, że jedna linia w javie odpowiada 60 liniom w COBOLu... ale teraz nie jestem pewny czy to nie było porównywane z javą 1.1 (która była dużo bardziej przegadana od współczesnych wersji)

Nie cierpie PHP i JS, ale trzeba przyznać, że daleko im pod względem upierdliwości do tych 3 wymienionych. Zupełnie inna liga.


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 3x, ostatnio: jarekr000000
abrakadaber
abrakadaber
+1 za basic na c64 - to był mój pierwszy język. I ten fackup kiedy zamiast co 10 numerowałeś sobie linie co 1 o trzeba było coś w środku kodu dodać :D :D :D
Spearhead
  • Rejestracja:prawie 6 lat
  • Ostatnio:14 minut
  • Postów:1002
6

CMake.

Dla przykładu, listy to po prostu napisy rozdzielane średnikami, zatem set(myVar "a b c") ustawia napis, a set(myVar "a;b;c") ustawia listę. Żeby potem pobrać jakiś element z listy to nie ma jakiejś ludzkiej składni pokroju klasycznych klamerek, tylko trzeba użyć polecenia list z opcją GET, która umieszcza wynik w nowej zmiennej

Kopiuj
set(myList a b c) # Creates the list "a;b;c"
list(GET myList 2 1 letters)
message("letters = ${letters}") # letters = c;b

Matematyki też nie można robić bezpośrednio, tylko trzeba używać polecenia math i również podać zmienną wyjściową

Kopiuj
set(x 3)
set(y 7)
math(EXPR z "(${x}+${y}) / 2")
message("result = ${z}") # result = 5

Pętle i tym podobne równie paskudne co w Bashu, jak nie gorsze

Kopiuj
foreach(outerVar IN ITEMS a b c)
    unset(s)
    foreach(innerVar IN ITEMS 1 2 3)
        # Stop inner loop once string s gets long
        list(APPEND s "${outerVar}${innerVar}")
        string(LENGTH s length)
        if(length GREATER 5)
            break()
        endif()

        # Do no more processing if outer var is "b"
        if(outerVar STREQUAL "b")
            continue()
        endif()
        message("Processing ${outerVar}-${innerVar}")
    endforeach()
    message("Accumulated list: ${s}")
endforeach()

Porównania...? Łapcie tabelkę
test.png
Te oznaczone * są dostępne dopiero od wersji 3.7 i późniejszych.

A najgorsze jest to, że w świecie C++ to standard.

edytowany 1x, ostatnio: Spearhead
SP
Szalony Programista2
Mogli go bardziej jak Make zrobić, tak to zupełnie inne narzędzie.
SL
Widząc CMake uznałem, że ludzkość musi się uczyć na błędach i nie wypuści już własnego języka jak można użyć gotowca. A potem zobaczyłem terraforma
SE
Zgadzam sie, CMake to rak. Bedac C++ devem masz taki "gratis", ze nie kopiesz sie z 1 jezykiem, a dwoma.
nalik
  • Rejestracja:około 9 lat
  • Ostatnio:prawie 2 lata
  • Postów:1039
2

Perl. Wytrzymałem w projekcie dwa albo trzy miesiące i uznałem, że czas na nową pracę. Kosmiczna, niezrozumiała dla mnie składnia, nieczytelne jednolinijkowe hacki, miałem wrażenie, że do języka zostało wrzucone wszystko co ktoś uznał za fajne, ale nie przemyślał całości ... nie, zdecydowanie nie.

edytowany 1x, ostatnio: nalik
LukeJL
Ja kiedyś się trochę uczyłem Perla, ale wydawało mi się to fajne, skrótowe pisanie regexpów, różne inne sztuczki, tajemnicze symbole. Nie wiem, czy dalej by mi się podobało, ale Perla wspominam z sentymentem.
nalik
Do jednolinijkowców być może. Ja miałem wtedy w tym pisać automatyzację testów.
Riddle
Perl jest całkiem spoko
WhiteLightning
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 13 godzin
  • Postów:3169
2

Nie liczac "zabawowych" jezykow typu brainfuck, maszyna Turinga itp.

XSLT 1.0 -> system gdzie logika biznesowa byla w tym czyms, chociaz twoworzenie xmli przetwarzaajcych inne xmle, brzmi jak wybryk szalonego geniusza.

Wewnetrzene systemy regulowe -> idea byla taka, zrobmy system dzieki ktoremu klient bedzie mogl sobie sam zmieniac rozne rzeczy. W efekci bylo cos trudnego w uzyciu, czego klient nie potrafil uzywac a developerow szlak trafial ze wzgledu na edytor, problemy z mergem i to ze np. w Javie daloby sie to samo napisac o wiele szybciej i latwiej.

Co do Perla to zalezy, pisalo mi sie w tym fajnie, ale czytanie kodu zaawansowanych Perlowcow bylo straszne.

Pierwsze Javy.

Basic z C64

jarekr000000
Napisałem całkiem dużo kodu w XSLT i nawet mi się wtedy podobało. Po latach też stwierdzam, że to był niezły absurd.
kzkzg
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 3 godziny
  • Postów:925
0

KQL


Keep calm and blame frontend.
Tell your cat I said pspsps.
W0
To jest ten język z KDB?
MisiekNaLuzie
ja np. pisalem tym gdzies na azurze. jesli to jest to samo to jest to microsoftowa odpowiedz na SQL zaimplementowana w ich niektorych serwisach na chmurze
W0
Aaa, sorry. Pomyliło mi się.
IK
  • Rejestracja:ponad 7 lat
  • Ostatnio:prawie 2 lata
0

C/AL, VB, PHP.
JS jest całkiem spoko, ale ekosystem to tragedia.

B1
  • Rejestracja:ponad 5 lat
  • Ostatnio:około 5 godzin
  • Postów:372
3

Ogólnie lubiłem bazy póki robiłem głównie selecty i może proste procedury, jednak znienawidziłem PL/SQL gdy poszedłem do firmy w której szef stwierdził że spaghetti javie7 za wolno działa i trzeba je przepisać na spaghetti PL/SQL xD W firmie każdy był chodzącą dokumentacją, ale nikt nie miał pojęcia o clean code czy wydajności, więc wyszło na to że nowe rzeczy pisało się wolniej, wszystko działało wolniej, ale za to nie dało się debugować błedów xD

AR
  • Rejestracja:ponad 19 lat
  • Ostatnio:6 miesięcy
0

Me Too.
w sensie ja też tknąłem kiedyś PL/SQL - nie z własnej woli i nigdy więcej nie mam zamiaru do tego wracać.
Ale za to TSQL jest miły, szybki i przyjemny. Niby podobne, a jednak nie :)


464
VT
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 2 lata
0

Microsoft Basic
Pascal
C++
Python

Zobacz pozostałe 2 komentarze
SP
Szalony Programista2
Reverse Engineering, parsowanie assemblera, SAT Solving i na szybko coś naskrobać.
VT
Ok, a w RE bawisz się dla własnej satysfakcji - czy dla czyjejś (czyli za kasę)? Pochwal się jeśli możesz co takiego rewersujesz? Ja to kiedyś bawiłem się w RE gry international karate+ dla C64 dla potrzeb portowania na inny system :)
SP
Szalony Programista2
Raczej CTF'y lub jak chciałem za wszelką cenę wiedzieć jak coś działa pod spodem.
VT
O, czyli podobnie jak ja - muszę wiedzieć co się dzieje na niskim poziomie :)
SP
Szalony Programista2
Python jest naprawdę szybki jak wszystko robisz na tensorach, po co komu pętle, mapy, filtry jak wszystko można matematycznie na tensorach :>
ToTomki
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:1318
1

C++. Pisałem za dzieciaka sobie jakieś skrypty w Rubym. Potem usłyszałem o programowaniu, stwierdziłem że w sumie why not. Nie dość, że w tamtych czasach (2006?) materiały to był jakiś dramat, to sam język nadaje się do a) super zastosowań w przypadku zapaleńców b) znęcania się nad dziećmi. Mój przypadek to był ten drugi. Gdybym urodził się teraz i dostał jakiś inny język do nauki przy wykorzystaniu współczesnych materiałów - w wieku moich aktualnych prawie 30 lat miałbym majątek wiele razy większy, bo zwyczajnie zbierałbym exp od dziecka, bo by mnie ten C++ i materiały do nauki nie zraziły. A tak skończyło się na paru sesjach po kilka minut, kiedy miałem ochotę wymiotować

S4
Czyli to wina c++ ze nie jesteś polskim muskiem? W tamtych czasach były dwie dobre książki Grębosz i Thinking in C++. Tak więc to tylko wymówki i szukanie winnego.
ToTomki
Nikogo to nie jest wina, że nie jestem polskim muskiem. Nawet moja, bo do tego trzeba mieć predyspozycje i ma je na świecie w sumie tylko jedna osoba, więc prawdopodobieństwo, że mi by się udało, było trochę zbyt niskie by brać je na poważnie. Jeszcze mniej poważnie biorę pod uwagę opinię osób, których zdaniem to wina trochę ponad dziesięcioletnich dzieci, że zniechęcone zostały do programowania, bo nie spodobało im się C++ i dostępne materiały, a przecież mogły bardziej się postarać i napierdalać Grębosza. A wcześniej w ogóle o nim się dowiedzieć.
ToTomki
Abstrahując już od tego czy miały "swobodny" dostęp do tych książek.
jarekr000000
Ja dość lubię C++, ale uważam też, że jest to bardzo zły język do nauki programowania (a C jeszcze gorszy).
1programmer
  • Rejestracja:prawie 5 lat
  • Ostatnio:2 dni
  • Lokalizacja:Wrocław
  • Postów:497
2

Javascript, a muszę to robić codziennie 😥


Programować muszę, bo się uduszę
Marius.Maximus
  • Rejestracja:ponad 14 lat
  • Ostatnio:około 18 godzin
  • Postów:2067
0

Python, JS. Za bardzo inne niż to co lubię/używam


--
Nie przyjmuję reklamacji za moje rady, używasz na własną odpowiedzialność.
Programowanie bez formatowania to jak chodzenie ze spodniami spuszczonymi na kostki. Owszem da się ale po pierwsze nie wygodne, po drugie nieprzyzwoicie wygląda.
Przed zaczęciem nowego wątku przeczytam problem XY
A5
  • Rejestracja:prawie 5 lat
  • Ostatnio:około rok
  • Lokalizacja:Kraków
  • Postów:115
1

C/C++/PHP, za to JSa bardzo lubię 8)

ZT
ZT
  • Rejestracja:około 6 lat
  • Ostatnio:ponad 2 lata
  • Postów:102
0

Nigdy nie musiałem pisać w języku, którego nie lubiłem. Zawsze wybierałem pracę tak, żeby nie było JS i PHP. Ale jakby mi ktoś kazał uprawiać nawiasozę pisać w Clojure to pewnie tego samego dnia bym napisał CV

SW
dziwne, skąd w takim razie wiesz, czego nie lubisz skoro unikasz?
ZT
zarejestrowany_troll
@szprotki_w_oleju: studia, próby nauki własnej.
Escanor16
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 5 godzin
  • Postów:366
0

Pascal, PHP, Python

PS. generalnie zaskoczony jestem jak wiele osób nie lubi tutaj Pythona


Nie chciałem być programistą jednak tego zechciał świat.
Zobacz pozostałe 3 komentarze
obscurity
czyli pisanie od nowa w innym języku? Nie lepiej zacząć od razu w docelowym języku i rozwijać prototyp zamiast zaczynać od zera?
ToTomki
Nie zdążyłem wysłać wiadomości, Escanor16 mnie uprzedził ;). Tak, ewentualnie pierwszej działającej wersji apki służacej do użytku wewnętrznego. Byle już była wartość. Bardzo to widać przy pracy z danymi, gdy ktoś ogarniający statystykę robi działający skrypt, ale obudowanie go (przebudowanie na coś ludzkiego :)) aplikacją i zoptymalizowanie - coś w sam raz dla scali :)
ToTomki
Zależy od przypadku. Jeśli masz drogich programistów scali i jakichś łebków wolnych z doskoku znających Pythona - niekoniecznie. Są też case'y data scientistów, którzy na ogół nie będą pisać optymalnych operacji w Sparku tylko klepną jakieś joiny na pałę w pandasie, powiedzą że działa i elo
ToTomki
W tym pierwszym case'ie chodziło mi też o projekty, które mają wysokie szanse wylądowania w koszu :). Co do drugiego - oczywiście nie ma w tym nic złego, że tak robią. Przecież nie mogą znać się na wszystkim (a przynajmniej nie ma takiej potrzeby)
W0
Czy ja wiem, czy Python do takich prototypów się specjalnie nadaje? IMO nie ma żadnej przewagi nad dowolnym innym językiem w tej kwestii. Ja to widzę tak, że problem z Pythonem jest taki, że Javovcy piszą po swojemu, ludzie od C po swojemu, ludzie po językach funkcyjnych też po swojemu, i każdy przenosi swoje zwyczaje.
piotrpo
  • Rejestracja:ponad 7 lat
  • Ostatnio:dzień
  • Postów:3277
2

[Objective C[]] Składnia z ryja podobna do niczego i udawana obiektowość. Jak byłem w projekcie, gdzie się tego używało, to łapałem taski w C++ jak tylko się dało.
PL-SQL, chociaż to raczej skutek alergii na Oracle. Zmarnowałem na pisanie w tym najlepsze lata swojego życia.

pms_enable_synaptics
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:152
1

C64 BASIC V2, chociaż nie wspominam go z niechęcią, raczej z obojętnością.

Koszmarnie wolny interpreter, kwadratowy garbage collector - na procesorze taktowanym częstotliwością 1 MHz, bardzo ubogi zestaw instrukcji.

W czasie projektowania komputera były już dostępne nowsze i lepsze wersje, ale producent przyjanuszował na pojemności ROMu i zastosował kość o pojemności 8 KiB, w której nowsze wersje by się nie zmieściły.

Zresztą wersja 2.0 też się nie zmieściła i część BASICa wylądowała w ROMie KERNAL xD

edit: ten BASIC był kupiony od Microsoftu, więc kod zbyt wysokich lotów to nie był, a kwadratówka w garbage collectorze to nie był jego jedyny problem...

edytowany 3x, ostatnio: pms_enable_synaptics
Zobacz pozostałe 8 komentarzy
jarekr000000
@pms_enable_synaptics: ło panie. Trochę coś tam widać wiesz, ale jak to się mówi - nie ucz ojca dzieci robić : see https://sta.c64.org/cbm64mem.html, w szczególności vectory od $0300(np.: $0308). Generalnie rozszerzenia BASIC podpinały się pod te adresy i nie musiały robić sztuczek z przepisywaniem ROM (szczególnie, że niektóre korzystały dodatkowo z tego RAMu pod ROMem).
pms_enable_synaptics
@jarekr000000: To, o czym piszesz, to kolejny hack. To były wektory pozwalające na przekierowanie całych głównych funkcjonalności interpretera. Rozszerzalność z precyzją godną pijanego robotnika naprawiającego zegarek za pomocą młotka ślusarskiego ;) Dziwi mnie tylko, że powołujesz się na $0308, skoro większość drobnych rozszerzeń modyfikowała jednak $030A. Rozszerzalności miała służyć jedynie instrukcja $0310 - USR() - widać, jaka to była "rozszerzalność" xD
jarekr000000
@pms_enable_synaptics: PLONK za sianie dezinformacji (w celu nawet nie wiadomo jakim).
pms_enable_synaptics
@jarekr000000: nie sianie "dezinformacji" tylko taka jest prawda, że dużo hacków podpinało się pod $030A i zlewało pozostałe wektory xD Nie wiedziałem jednak, że wojna C64 vs Atari wciąż się toczy xD Strach pomyśleć co by się stało, gdybym napisał, że Atari jest lepsze od C64 (disclaimer: nie, nie jest - z tym Atari to był tylko taki przykład, a wśród 8-bitowców Z80 i CP/M górą :P )
Michał Kuliński
Grzeszyć (hamartanein) to z greki nie trafić w cel. Atari z japońskiego to trafić w cel. A więc nawróćcie się grzesznicy :)
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:3 minuty
  • Postów:8398
0

zapomniałem! Przecież pisałem jeszcze w *tfu* CoffeeScripcie. Czyli coś, co zmienia składnię JavaScripta na taką Pythono-Rubiowo-YAMLową

I cóż, efektem była porąbana, nieintuicyjna i dwuznaczna składnia. Pisałem coś w AngularJS i miałem wrażenie, że wszystko mi idzie z kilka razy wolniej przez to, że szarpię się z językiem. Ten język to była pomyłka.

A miało być tak pięknie. Było to w czasach przed ES6, więc ten język na tamte czasy oferował "wygodniejszy" sposób pisania JSa (no i spopularyzował arrow functions, które potem weszły do JSa). Tylko, że w praktyce pisania okazało się to niewygodne, a CoffeeScript można nazwać ciekawym, ale nieudanym eksperymentem i ogólny trend w społeczności był taki, że nawet projekty, które były pisane w CoffeeScripcie, zaczęto z powrotem przepisywać na JS, ludzie, którzy promowali CoffeeScripta, też z powrotem przeszli na JS. A sam JS zaczął się wzbogacać o różne elementy, które pozwalają na wygodne pisanie(np. =>), więc CS przestał być atrakcyjny w porównaniu do ES6.


edytowany 2x, ostatnio: LukeJL
Riddle
CoffeeScript spopularyzował ideę transpilowania do JS. Od tego się zaczęły jsxy, typescripty, i transpile z innych języków np z kotlina.
LukeJL
Dlatego słusznie, że powstał jako eksperyment CoffeeScript można nazwać ciekawym, ale nieudanym eksperymentem ;) niektóre rzeczy dobrze, że powstają po to, żeby można było je sprawdzić, a potem porzucić i wyciągnąć wnioski na przyszłość oraz zebrać ewentualną inspirację, wyciągnąć rzeczy, które poszły dobrze.
marian pazdzioch
  • Rejestracja:ponad 6 lat
  • Ostatnio:dzień
  • Postów:713
3

Python

G8
  • Rejestracja:około 3 lata
  • Ostatnio:około rok
  • Postów:2000
1

Bash

edytowany 1x, ostatnio: cerrato
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:6 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
0
jarekr000000 napisał(a):
  1. PL/SQL - ludzie do dzisiaj w tym piszą, a IMO powinno to być zabronione konwencją genewską. Nie musiałem w tym wiele pisać, ale każde moje spotkanie kończyło się niedowierzaniem, że coś mosze być aż tak głupie i niespójne. Do dziś pamiętam herezje taki jak parametry OUT, absurdalny debug itp.

A C# też nie ma przypadkiem parametrów OUT? Jak ma to PL/SQL i C# :D


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
SA
Ma, ale nie licząc paru miejsc w bibliotece standardowej (xD) to rzadko widzę, praktycznie w ogóle.
lsikora
  • Rejestracja:ponad 6 lat
  • Ostatnio:7 miesięcy
  • Postów:40
1

XQuery


Murarz, tynkarz, akrobata
PR
  • Rejestracja:prawie 4 lata
  • Ostatnio:około 4 godziny
  • Postów:219
0

Ciekawe ile osób, które podało JS, miało przyjemność klepania kodu w TypeScript i ES6. :)

PL/SQL, C++ (<11), Ada, CSS wspierający stare IE (layout przed flexboxem), <= ES5, Perl, syntax Basha też jest mało intuicyjny

lsikora
Właśnie pracuję przy aplikacji z TS i react, i nadal uważam, że ES to się na ActionScript 3.0 skończył.
LukeJL
Żeby polubić JS, trzeba go poznać mocniej. Jak wchodziłem w JS, to myślałem o nim, że to najdziwniejszy język (to było jeszcze za czasów ES3, gdzie prawie nic nie było i wszystko robiło się naokoło. Wtedy jeszcze byłem wielkim fanem klas, więc wkurzało mnie, że nie było klas wtedy) a jak zacząłem głębiej pisać, to okazało się, że jednak to fajny język. I dostałem nagrodę za cierpliwość - najpierw ES5, później ES6 i dalsze wersje języka, które wprowadzały różne ciekawe rzeczy i pisało się coraz wygodniej w tym JS. Chociaż nie jest to język idealny, to nie jest też najgorszy
renderme
  • Rejestracja:około 6 lat
  • Ostatnio:około 15 godzin
  • Postów:1461
0

visual basic


Granie w gry i robienie gier ma tyle wspólnego, co uprawianie seksu z pracą ginekologa.
ledi12
  • Rejestracja:ponad 5 lat
  • Ostatnio:18 dni
  • Lokalizacja:Wrocław
46

Bash, C# :D Za Javą względnie tez nie przepadam. Finalnie z języków kompilowanych najlepiej pisało mi się w C++.


Robię http response status cody w martwych ciągach
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)