Następca C

1

Od lat są próby zastąpienia wysłużonego już języka C. Moje przemyślenia na temat tego, które nowe języki błędnie interpretowano jako następce C. Podzielę języki na cztery grupy, wy oceńcie, który język powinienem wstawić do odpowiedniej grupy.

Grupa A - języki systemowe niskiego poziomu podobne do C trudne:
Odin - https://odin-lang.org/
Jai - https://inductive.no/jai/
Beef - https://www.beeflang.org/
Vlang - https://vlang.io/
Muon - https://github.com/nickmqb/muon

Grupa B - języki systemowe niskiego poziomu podobne do C++ bardzo trudne:
C++
Rust
Zig - https://ziglang.org/

Grupa C - języki aplikacji wykorzystujące GC łatwe:
Nim
Crystal
Elixir
Elm
Idris
D
Go
Dart
C#, F#
wszystkie na JVM

Grupa D - języki skryptowe bardzo łatwe:
Ruby, Python, Perl, JS, TS, PHP etc etc.

2

Ale o co chodzi? Po co ta zabawa? Nie wiem do czego nam potrzebne takie grupowanie języków. C, C++, Java, C# i inne mają się dobrze.

1

Dla początkujących, bo i tak będą musieli poznać żeby dostać zaliczenie, to będzie Cormen Pseudocode.
Są różnice w wydaniach 2, 3
http://www.cs.utsa.edu/~wagner/CS3343/cormen/pseudo.html

Do internetowych dyskusji na start
https://en.wikipedia.org/wiki/List_of_programming_languages
https://en.wikipedia.org/wiki[...]programming_languages_by_type
https://en.wikipedia.org/wiki[...]ison_of_programming_languages

11

Pomijając to, że można dyskutować nad tymi listami - czy wszystkie języki są dobrze przydzielone, czy czegoś nie zabrakło itp, jedna rzecz mnie zastanawia. Czy uważasz, że PHP miał być następcą C? Really? Nie no, bez jaj :D

Tak samo nie wiem, co Perl albo JavaScript robią w zestawieniu konkurentów/następców języka C. To jakby w liście alternatyw dla samochodu, poza rowerem i autobusem, wstawić jeszcze krzesło i palmę :D

2

@cerrato: No właśnie to chciałem wyjaśnić, ale autor się upiera, że nie.

0
cerrato napisał(a):

nie wiem, co JavaScript robią w zestawieniu konkurentów/następców języka C.

Już była podobna dyskusja, poszukałem, znalazłem AFAIR system operacyjny napisany w JS i linux-distro w JS.
Jeżeli JavaScript nie działa jeszcze na Marsie to znaczy tylko tyle, że żaden komputer jeszcze nie wylądował na Marsie. :)

frida napisał(a):

Od lat są próby zastąpienia wysłużonego już języka C. Moje przemyślenia na temat tego, które nowe języki błędnie interpretowano jako następce

Można na siłę szukać egzotycznych non-GC alternatyw dla C ale po co?
Od zastępowania C/C++ jest od dawna Rust. I dyskusje gorące jak gender-drama

1

@BraVolt: Rust moim skromnym zdaniem jest zbyt skomplikowany do tworzenia systemu operacyjnego. Jest taki system Redox OS, ale to zabawka i na różnych stronach programiści piszą, że został, źle zaprojektowany. Jeden z głównych programistów Microsoftu też napisał, ze Rust jest zbyt skomplikowany i chcą go wykastrować z pewnych rzeczy i na jego podstawie stworzyć nowy język systemowy o nazwie Verona. Będzie mały, łatwy i prosty jak C, ale z ułatwieniami jakie daje Rust w zarządzaniu pamięcią i dobrym bezpieczeństwem.

1
frida napisał(a):

@BraVolt: Rust moim skromnym zdaniem jest zbyt skomplikowany do tworzenia systemu operacyjnego. Jest taki system Redox OS, ale to zabawka i na różnych stronach programiści piszą, że został, źle zaprojektowany. Jeden z głównych programistów Microsoftu też napisał, ze Rust jest zbyt skomplikowany i chcą go wykastrować z pewnych rzeczy i na jego podstawie stworzyć nowy język systemowy o nazwie Verona. Będzie mały, łatwy i prosty jak C, ale z ułatwieniami jakie daje Rust w zarządzaniu pamięcią i dobrym bezpieczeństwem.

Gdzie w takim razie miejsce na nasze zdanie?

2

BTW, ciekawy wątek.
Ale do rzeczy. Moim zdaniem z rustem trochę jak z komunizmem. W teorii super przyszlosciowy jezyk, embeddedy, naukowy trochę niskopoziomowy itd, itp.
Super, ale trochę haczyk.
Idziesz sobie do dokumentacji, bierzesz jakąś z pierwszych lekcji, i bum składnia tak przekombinowana, że odechciewa się uczyć.
Moim zdaniem następcą C powinien mieć :
-możliwość i narzędzia do pisania sterowników, mikrokontrolerów, jakiś procesorów, i ogólnie niskopoziomowość,
-Szybkość, oraz instrukcje do matematyki(algorytmów)
-Normalna składnia, mimo silnie typowanego języka.
-Możliwość działania przy sieciach komputerowych i bazach danych, oraz rzeczach systemowych typu rozszerzenia plików.
Taki język byłby na pewno lepszy od C.

0

Następcą C jest D. Po D jest E.

Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0