Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Ajatuksia uusista ohjelmointikielistä

uudempikoodaaja [21.05.2026 21:27:33]

#

Olen harjoitellut jonkin verran Rustilla ohjelmointia viime päivinä (yhtä kurssia opiskelen). Kyseessä on suhteellisen uusi ohjelmointikieli (tarkoitan suhteellisen uudella kielillä noin 20 vuotta vanhoha kieliä) Kyseinen kieli julkaistiin kai noin kymmenen vuotta sitten vaikka olikin olemassa joitakin vuosia sitä ennen (2015 tuli ensimmäinen vakaa julkaisu).

Ja kun puhutaan uusista ohjelmointikielestä niin tarkoitan alkupisteellä sen ensimmäistä virallista vakaata julkaisuvuotta. Toinen melko uusi ohjelmointikieli on Dart, joka tuli joskus 2010-luvun alussa. Ykkösversio tuli kai 2013 .

Mieleeni tuli muutama askarruttava kysymys:

Mitä muita merkittäviä uusia ohjelmointikieliä on, jotka ovat merkittäviä yhdellä tai useammalla osa-alueella

Mitä uudet ohjelmointikielet ovat tuoneet mitä vanhoissa ei ole (ainakaan valmiina)

Ja mitä potentiaalisia kieliä on (tai jatkokysymyksenä missä kielissä ainakin voisi olla potentiaalia tulevaisuudessa)

jlaire [21.05.2026 21:44:40]

#

TypeScript (2012) on parempi versio JavaScriptistä ja sitä käytetään todella paljon webbikoodauksessa.

Lean (2013) on edistyneellä tyyppijärjestelmällä varustettu funktionaalinen ohjelmointikieli, jota käytetään pääasiassa matematiikan formalisointiin. Uusin versio Lean 4 julkaistiin vasta 2021.

Zig (2016) yrittää olla parempi C ja siitä ainakin puhutaan netissä paljon.

WebAssembly (2017) ei ole ohjelmointikieli, mutta relevantti teknologia joka mahdollistaa monien eri kielien suorittamisen selaimessa tehokkaasti. Assemblyharrastajille RISC-V (2011) on myös uusi tuttavuus.

Päinvastaisessa suunnassa viime kuussa julkaistu GCC 16 sisältää tuen klassiselle ALGOL 68 -kielelle. :D

uudempikoodaaja [21.05.2026 23:45:24]

#

jlaire kirjoitti:

TypeScript (2012) on parempi versio JavaScriptistä ja sitä käytetään todella paljon webbikoodauksessa.

Tästä olen aiemmin kuulutkin.

jlaire kirjoitti:

Zig (2016) yrittää olla parempi C ja siitä ainakin puhutaan netissä paljon.

Juu. Zig ei sisällä makroja, esikääntäjää, piilotettuja ohjausvirtaa tai piilotettua muistinhallintaa. Ja lisäyksenä Zig ei sisällä poikkeuksia.

uudempikoodaaja [18.06.2026 00:37:30]

#

Entä millainen filosofia on Rust-kielen taustalla? Kyseistä ajatusta olen viime päivinä pohtinut.

Grez [18.06.2026 10:46:46]

#

Rust-ohjelmointikielen ydinfilosofia perustuu ajatukseen, että ohjelmistojen suorituskyky ja turvallisuus eivät saa olla toisiaan poissulkevia asioita. Kieli on suunniteltu tarjoamaan raakaa laskentatehoa ilman kompromisseja, ja valjastaa kääntäjän estämään ohjelmointivirheet jo ennen ohjelman ajamista.

Rustin keskeiset filosofiset kulmakivet voidaan tiivistää seuraaviin periaatteisiin:

Turvallisuus ennen kaikkea (Safety First): Rust pyrkii eliminoimaan tietyt perinteiset esim. C/C++ ongelmat, kuten muistivuodot, puskureiden ylivuodot ja säikeiden väliset kilpatilanteet.

Omistajuus ja lainaaminen (Ownership and Borrowing): Kieli takaa muistiturvallisuuden ilman ajonaikaista roskienkeruuta. Kääntäjä valvoo tiukasti sitä, kuka voi lukea, kirjoittaa tai omistaa mitäkin dataa ja jo käännösvaiheessa tekee muistinvapautukset oikeisiin kohtiin.

Nollakustannusabstraktiot (Zero-cost Abstractions): Rust kannustaa kirjoittamaan korkean tason koodia, joka on yhtä nopeaa ja tiivistä kuin käsin optimoitu matalan tason koodi. Abstraktiot eivät tuo mukanaan ajonaikaista suorituskykyä heikentävää taakkaa.

Selkeys ja helppolukuisuus: Kielen syntaksi on suunniteltu siten, että koodin tarkoitus on heti ilmeinen ja kääntäjän virheilmoitukset ovat erittäin tarkkoja. Tämän tarkoituksena on tehdä oikean koodin kirjoittamisesta helpompaa kuin väärän.

Vastaus

Muista lukea kirjoitusohjeet.
Tietoa sivustosta