V програмски јазик со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄

ΠŸΡ€Π΅Π²Π΅Π΄Π΅Π½ΠΎ Π²ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ Π·Π° јазик V. V Π΅ статички ΠΏΠΈΡˆΡƒΠ²Π°Π½ машински ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½ јазик кој сС фокусира Π½Π° ΠΎΠ»Π΅ΡΠ½ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Ρ€Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ ΠΈ ΠΌΠ½ΠΎΠ³Ρƒ Π±Ρ€Π· Π·Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°ΡšΠ΅. Код Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ сродни Π°Π»Π°Ρ‚ΠΊΠΈ Π΅ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Ρ†Π°Ρ‚Π° MIT.

Бинтаксата Π½Π° V Π΅ ΠΌΠ½ΠΎΠ³Ρƒ слична Π½Π° Go, ΠΏΠΎΠ·Π°Ρ˜ΠΌΡƒΠ²Π°Ρ˜ΡœΠΈ Π½Π΅ΠΊΠΎΠΈ конструкции ΠΎΠ΄ Oberon, Rust ΠΈ Swift. ΠˆΠ°Π·ΠΈΠΊΠΎΡ‚ Π΅ поСдноставСн ΠΊΠΎΠ»ΠΊΡƒ ΡˆΡ‚ΠΎ Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ, спорСд инвСститорот, 30 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ ΡƒΡ‡Π΅ΡšΠ΅ сС Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ Π·Π° Π΄Π° сС Π½Π°ΡƒΡ‡Π°Ρ‚ основитС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°. Π’ΠΎ исто Π²Ρ€Π΅ΠΌΠ΅, Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ останува доста моќСн ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи Π·Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° иститС Π·Π°Π΄Π°Ρ‡ΠΈ ΠΊΠ°ΠΊΠΎ ΠΏΡ€ΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ програмски Ρ˜Π°Π·ΠΈΡ†ΠΈ (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ сС достапни Π·Π° 2D/3D Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ GUI ΠΈ Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ).

Π‘ΠΎΠ·Π΄Π°Π²Π°ΡšΠ΅Ρ‚ΠΎ Π½ΠΎΠ² јазик бСшС ΠΏΠΎΡ‚Ρ‚ΠΈΠΊΠ½Π°Ρ‚ΠΎ ΠΎΠ΄ ΠΆΠ΅Π»Π±Π°Ρ‚Π° Π΄Π° сС постигнС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ˜Π° Π½Π° Сдноставноста Π½Π° синтаксата Π½Π° Go Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚, Π±Ρ€Π·ΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°, Π»Π΅ΡΠ½ΠΎΡ‚ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅, прСносливоста ΠΈ одрТливоста Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ со пСрформанситС Π½Π° C/C++, бСзбСдноста Π½Π° Rust ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° машински ΠΊΠΎΠ΄ Π²ΠΎ Ρ„Π°Π·Π°Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Zig. Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠ°, сакав Π΄Π° добијам ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ ΠΈ Π±Ρ€Π· ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ кој ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π±Π΅Π· Π½Π°Π΄Π²ΠΎΡ€Π΅ΡˆΠ½ΠΈ зависности, Π΄Π° сС ослободи ΠΎΠ΄ Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΠΎΡ‚ опсСг (Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ) ΠΈ Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ моТност Π·Π° β€žΠΆΠ΅ΡˆΠΊΠΎβ€œ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚.

Π’ΠΎ спорСдба со C++, Π½ΠΎΠ²ΠΈΠΎΡ‚ јазик Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ поСдноставСн, ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° Π±Ρ€Π·ΠΈΠ½Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° (Π΄ΠΎ 400 ΠΏΠ°Ρ‚ΠΈ), ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠ²Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°ΡšΠ΅, Π½Π΅ΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ со Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΎ ΠΎΠ΄Π½Π΅ΡΡƒΠ²Π°ΡšΠ΅ ΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ Π°Π»Π°Ρ‚ΠΊΠΈ Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»ΠΈΠ·ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅. Π’ΠΎ спорСдба со Python, V Π΅ ΠΏΠΎΠ±Ρ€Π·, поСдноставСн, ΠΏΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ ΠΈ ΠΏΠΎΠΎΠ΄Ρ€ΠΆΠ»ΠΈΠ². Π’ΠΎ спорСдба со Go, V Π½Π΅ΠΌΠ° Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, Π½Π΅ΠΌΠ° Π½ΡƒΠ»Π°, ситС врСдности Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ ΠΌΠΎΡ€Π° сСкогаш Π΄Π° сС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π°Ρ‚, ситС ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ сС стандардно Π½Π΅ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, само Π΅Π΄Π΅Π½ Ρ‚ΠΈΠΏ Π½Π° Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½ (β€ža := 0β€œ), Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ Ρ‚Ρ€Π°Π΅ΡšΠ΅ ΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°Ρ‚Π° Π½Π° Π΄ΠΎΠ±ΠΈΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠ·Π²Ρ€ΡˆΠ½ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ, присуство Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½Π° прСносливост ΠΎΠ΄ C, отсуство Π½Π° собирач Π½Π° Ρ“ΡƒΠ±Ρ€Π΅, ΠΏΠΎΠ±Ρ€Π·Π° ΡΠ΅Ρ€ΠΈΡ˜Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π°, моТност Π·Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΠΈΡ€Π°ΡšΠ΅ Π½Π° Π½ΠΈΠ·ΠΈ (β€žprintln('$foo: $bar.baz')β€œ).

fnmain() {
области := ['ΠΈΠ³Ρ€Π°', 'Π²Π΅Π±', 'Π°Π»Π°Ρ‚ΠΊΠΈ', 'Π½Π°ΡƒΠΊΠ°', 'систСми', 'GUI', 'ΠΌΠΎΠ±ΠΈΠ»Π΅Π½'] a := 10
Π°ΠΊΠΎ Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ {
Π΄ΠΎ := 20
}
Π·Π° област Π²ΠΎ области {
println (β€žΠ—Π΄Ρ€Π°Π²ΠΎ, $area ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈ!β€œ)
}
}

ΠšΠ°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚:

  • ΠšΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ ΠΈ Π±Ρ€Π· ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€, кој Π·Π°Π΅Π΄Π½ΠΎ со стандардната Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Ρ„Π°ΡœΠ° ΠΎΠΊΠΎΠ»Ρƒ 400 KB. Високата Π±Ρ€Π·ΠΈΠ½Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° сС постигнува ΠΏΡ€Π΅ΠΊΡƒ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° машински ΠΊΠΎΠ΄ ΠΈ модуларност. Π‘Ρ€Π·ΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 1.2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ Π»ΠΈΠ½ΠΈΠΈ ΠΊΠΎΠ΄ Π²ΠΎ сСкунда Π½Π° Π΅Π΄Π½ΠΎ Ρ˜Π°Π΄Ρ€ΠΎ Π½Π° процСсорот (сС Π·Π°Π±Π΅Π»Π΅ΠΆΡƒΠ²Π° Π΄Π΅ΠΊΠ° Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° V ΠΌΠΎΠΆΠ΅ Π΄Π° користи C, Π° ΠΏΠΎΡ‚ΠΎΠ° Π±Ρ€Π·ΠΈΠ½Π°Ρ‚Π° ΠΏΠ°Ρ“Π° Π½Π° 100 илјади Π»ΠΈΠ½ΠΈΠΈ Π²ΠΎ сСкунда). Π‘Π°ΠΌΠΎΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚, ΠΊΠΎΠ΅ исто Ρ‚Π°ΠΊΠ° Π΅ напишано Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ V (исто Ρ‚Π°ΠΊΠ° ΠΈΠΌΠ° ΠΈ Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ‚Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π²ΠΎ Go), Ρ‚Ρ€Π°Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 0.4 сСкунди. Π”ΠΎ ΠΊΡ€Π°Ρ˜ΠΎΡ‚ Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°Ρ‚Π° сС ΠΎΡ‡Π΅ΠΊΡƒΠ²Π° Π΄Π° Π·Π°Π²Ρ€ΡˆΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, со ΡˆΡ‚ΠΎ ќС сС Π½Π°ΠΌΠ°Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π³Ρ€Π°Π΄Π΅ΡšΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ Π½Π° 0.15 сСкунди. Π‘ΡƒΠ΄Π΅Ρ˜ΡœΠΈ спорСд тСстовитС спровСдСни ΠΎΠ΄ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‡ΠΎΡ‚, само-ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Go Π±Π°Ρ€Π° 512 MB простор Π½Π° дискот ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π·Π° Π΅Π΄Π½Π° ΠΈ ΠΏΠΎΠ» ΠΌΠΈΠ½ΡƒΡ‚Π°, Rust Π±Π°Ρ€Π° 30 GB ΠΈ 45 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, GCC - 8 GB ΠΈ 50 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, Clang - 90 GB ΠΈ 25 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ,
    Swift - 70 GB ΠΈ 90 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ;

  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ сС ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π°Ρ‚ Π²ΠΎ ΠΈΠ·Π²Ρ€ΡˆΠ½ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π±Π΅Π· Π½Π°Π΄Π²ΠΎΡ€Π΅ΡˆΠ½ΠΈ зависности. Π“ΠΎΠ»Π΅ΠΌΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΈΠ·Π²Ρ€ΡˆΠ½Π°Ρ‚Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° Π½Π° СдноставСн http сСрвСр ΠΏΠΎ ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π΅ само 65 KB;
  • Π˜Π·Π²Π΅Π΄Π±Π°Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΅ Π½Π° Π½ΠΈΠ²ΠΎ Π½Π° склопови Π½Π° C ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ;
  • Бпособност Π·Π° бСспрСкорна ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ†ΠΈΡ˜Π° со C ΠΊΠΎΠ΄ΠΎΡ‚, Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ‚Ρ€ΠΎΡˆΠΎΡ†ΠΈ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π²ΠΎ Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ C ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ²ΠΈΠΊΠ°Π°Ρ‚ ΠΎΠ΄ ΠΊΠΎΠ΄ Π²ΠΎ Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ V, ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ, ΠΊΠΎΠ΄ΠΎΡ‚ Π²ΠΎ Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ V ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ²ΠΈΠΊΠ° Π½Π° кој Π±ΠΈΠ»ΠΎ јазик ΠΊΠΎΠΌΠΏΠ°Ρ‚ΠΈΠ±ΠΈΠ»Π΅Π½ со C;
  • ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΏΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ Π½Π° C/C++ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π²ΠΎ прСтстава Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ V. Π—Π° ΠΏΡ€Π΅Π²ΠΎΠ΄ сС користи парсСр ΠΎΠ΄ Clang. Π‘Γ¨ ΡƒΡˆΡ‚Π΅ Π½Π΅ сС ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½ΠΈ ситС карактСристики Π½Π° стандардот C, Π½ΠΎ ΡΠ΅Π³Π°ΡˆΠ½ΠΈΡ‚Π΅ моТности Π½Π° ΠΏΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚ сС вСќС Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ Π·Π° ΠΏΡ€Π΅Π²ΠΎΠ΄ Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ Π½Π° V ΠΈΠ³Ρ€Π°Ρ‚Π° DOOM. ΠŸΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚ Π½Π° C++ Π΅ сè ΡƒΡˆΡ‚Π΅ Π²ΠΎ Ρ€Π°Π½Π° Ρ„Π°Π·Π° Π½Π° Ρ€Π°Π·Π²ΠΎΡ˜;
  • Π’Π³Ρ€Π°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΡΠ΅Ρ€ΠΈΡ˜Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π°, Π±Π΅Π· Π΄Π° Π±ΠΈΠ΄Π΅ ΠΏΠΎΠ²Ρ€Π·Π°Π½Π° со Ρ‚Ρ€Π°Π΅ΡšΠ΅;
  • ΠœΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ Π·Π° распрСдСлба Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π°;
  • ΠžΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ бСзбСдност: Π±Π΅Π· NULL, Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ врСдности ΠΈ Ρ€Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π°. Π’Π³Ρ€Π°Π΄Π΅Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€Π΅Ρ‡Π΅ΠΊΠΎΡ€ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚. ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ‡ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Generic). ΠžΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ ΠΈ структури ΠΊΠΎΠΈ стандардно Π½Π΅ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° сС ΠΏΡ€ΠΎΠΌΠ΅Π½Π°Ρ‚;
  • ΠœΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΡšΠ΅ Π½Π° β€žΠΆΠ΅ΡˆΠΊΠΈΠΎΡ‚β€œ ΠΊΠΎΠ΄ (ΠΎΠ΄Ρ€Π°Π· Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚ Π²ΠΎ Π»Π΅Ρ‚ Π±Π΅Π· ΠΏΡ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°ΡšΠ΅);
  • Алатки Π·Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ повСќСнишки. Π˜ΡΡ‚ΠΎ ΠΊΠ°ΠΊΠΎ ΠΈ Π²ΠΎ Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ Go, ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° ΠΊΠ°ΠΊΠΎ β€žrun foo()β€œ сС користи Π·Π° Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π½ΠΎΠ²Π° нишка Π½Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ (слично Π½Π° β€žgo foo()β€œ). Π’ΠΎ ΠΈΠ΄Π½ΠΈΠ½Π° сС ΠΏΠ»Π°Π½ΠΈΡ€Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Π³ΠΎΡ€ΡƒΡ‚ΠΈΠ½ΠΈ ΠΈ распорСдувач Π½Π° нишки;
  • ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Windows, macOS, Linux, *BSD ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ систСми. Π‘Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π° Π΄ΠΎ ΠΊΡ€Π°Ρ˜ΠΎΡ‚ Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°Ρ‚Π° Π΄Π° сС Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Android ΠΈ iOS;
  • Π£ΠΏΡ€Π°Π²ΡƒΠ²Π°ΡšΠ΅ со ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°ΡšΠ΅ (ΠΊΠ°ΠΊΠΎ Π²ΠΎ Rust), Π±Π΅Π· ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° собирач Π½Π° Ρ“ΡƒΠ±Ρ€Π΅;
  • Достапност Π½Π° ΠΌΡƒΠ»Ρ‚ΠΈ-платформски ΠΊΠΎΠΌΠΏΠ»Π΅Ρ‚ Π°Π»Π°Ρ‚ΠΊΠΈ Π·Π° Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈ ΠΈΠ·Π»Π΅Π·, со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° GDI+/Какао ΠΈ OpenGL Π·Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ (сС ΠΏΠ»Π°Π½ΠΈΡ€Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° DirectX, Vulkan ΠΈ Metal API). ΠŸΠΎΡΡ‚ΠΎΡ˜Π°Ρ‚ Π°Π»Π°Ρ‚ΠΊΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° со 3D ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ, скСлСтна Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡ˜Π° ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° Π½Π° ΠΊΠ°ΠΌΠ΅Ρ€Π°Ρ‚Π°;
  • Достапност Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ со Π΄ΠΈΠ·Π°Ρ˜Π½Π΅Ρ€ΡΠΊΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΊΠΎΠΈ сС Ρ€ΠΎΠ΄Π½ΠΈ Π½Π° сСкој ОБ. Windows користи WinAPI/GDI+, macOS користи ΠΊΠ°ΠΊΠ°ΠΎ, Π° Linux користи сопствСн сСт Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° вСќС сС користи Π²ΠΎ Ρ€Π°Π·Π²ΠΎΡ˜ Π’ΠΎΠ»Ρ‚ β€” ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π·Π° Slack, Skype, Gmail, Twitter ΠΈ Facebook;

    ΠŸΠ»Π°Π½ΠΎΡ‚ Π΅ Π΄Π° сС создадС Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° Π·Π° дизајн Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜Ρ слична Π½Π° Delphi, Π΄Π° сС ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ API слично Π½Π° SwiftUI ΠΈ React Native ΠΈ Π΄Π° сС ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π·Π° iOS ΠΈ Android;

    V програмски јазик со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄

  • Достапност Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½Π° Π²Π΅Π±-Ρ€Π°ΠΌΠΊΠ°, која сС користи Π·Π° ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ Π²Π΅Π±-Π»ΠΎΠΊΠ°Ρ†ΠΈΡ˜Π°, Ρ„ΠΎΡ€ΡƒΠΌ ΠΈ Π±Π»ΠΎΠ³ Π·Π° Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‡ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚. ΠŸΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½Π° Π΅ ΠΏΡ€Π΅Ρ‚ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π½Π° HTML шаблони, Π±Π΅Π· Π½ΠΈΠ²Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° сСкоС Π±Π°Ρ€Π°ΡšΠ΅;
  • ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° вкрстСна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°. Π—Π° Π΄Π° ја ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ ΠΈΠ·Π²Ρ€ΡˆΠ½Π°Ρ‚Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° Π·Π° Windows, само ΡΡ‚Π°Ρ€Ρ‚ΡƒΠ²Π°Ρ˜Ρ‚Π΅ β€žv -os windowsβ€œ, Π° Π·Π° Linux - β€žv -os linuxβ€œ (ΠΏΠΎΠ΄ΠΎΡ†Π½Π° сС ΠΎΡ‡Π΅ΠΊΡƒΠ²Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° вкрстСна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° macOS). ВкрстСната ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈ Π·Π° Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ;
  • Π’Π³Ρ€Π°Π΄Π΅Π½ ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ Π·Π° зависност, ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΈ Π°Π»Π°Ρ‚ΠΊΠΈ Π·Π° Π³Ρ€Π°Π΄Π΅ΡšΠ΅. Π—Π° Π΄Π° ја ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π°, само ΡΡ‚Π°Ρ€Ρ‚ΡƒΠ²Π°Ρ˜Ρ‚Π΅ β€žv.β€œ, Π±Π΅Π· Π΄Π° користитС ΠΌΠ°Ρ€ΠΊΠ° ΠΈΠ»ΠΈ Π½Π°Π΄Π²ΠΎΡ€Π΅ΡˆΠ½ΠΈ Π°Π»Π°Ρ‚ΠΊΠΈ. Π—Π° Π΄Π° инсталиратС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, само ΡΡ‚Π°Ρ€Ρ‚ΡƒΠ²Π°Ρ˜Ρ‚Π΅, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, β€žv get sqliteβ€œ;
  • Достапност Π½Π° Π΄ΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ Π·Π° Ρ€Π°Π·Π²ΠΎΡ˜ Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ V Π²ΠΎ ΡƒΡ€Π΅Π΄Π½ΠΈΡ†ΠΈΡ‚Π΅ VS Π·Π°ΠΊΠΎΠ½ΠΈΠΊ ΠΈ vim.

Развој Π²ΠΎΠΎΡ‡Π΅Π½ Π·Π°Π΅Π΄Π½ΠΈΡ†Π° со скСптицизам, бидСјќи ΠΎΠ±Ρ˜Π°Π²Π΅Π½ΠΈΠΎΡ‚ ΠΊΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° сè ΡƒΡˆΡ‚Π΅ Π½Π΅ сС ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ ситС Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°Π½ΠΈ способности ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π° Π΅ ΠΌΠ½ΠΎΠ³Ρƒ Π³ΠΎΠ»Π΅ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π° Π·Π° ΡΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ Π½Π° ситС ΠΏΠ»Π°Π½ΠΎΠ²ΠΈ.
ΠŸΠΎΠΊΡ€Π°Ρ˜ Ρ‚ΠΎΠ°, ΠΏΡ€Π²ΠΈΡ‡Π½ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡˆΡ‚Π΅Ρ‚ΠΎ имашС објавСно ΡΠΊΡ€ΡˆΠ΅Π½ ΠΊΠΎΠ΄ кој ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ со ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅ ΠΈ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅. Π‘Π΅ прСтпоставува Π΄Π΅ΠΊΠ° Π°Π²Ρ‚ΠΎΡ€ΠΎΡ‚ сè ΡƒΡˆΡ‚Π΅ Π½Π΅ ја достигнал Ρ„Π°Π·Π°Ρ‚Π° Π²ΠΎ која ΠΏΠΎΡ‡Π½ΡƒΠ²Π°Π°Ρ‚ Π΄Π° Π·Π°Π±Π΅Π»Π΅ΠΆΡƒΠ²Π°Π°Ρ‚ ΠŸΠ°Ρ€Π΅Ρ‚ΠΎΠΎΠ²ΠΈΠΎΡ‚ Π·Π°ΠΊΠΎΠ½, спорСд кој 20% ΠΎΠ΄ Π½Π°ΠΏΠΎΡ€ΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄ΡƒΠ²Π° 80% ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΎΡ‚, Π° останатитС 80% ΠΎΠ΄ Ρ‚Ρ€ΡƒΠ΄ΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ само 20% ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΎΡ‚.

Π’ΠΎ ΠΌΠ΅Ρ“ΡƒΠ²Ρ€Π΅ΠΌΠ΅, Π½Π° ΡΠ»Π΅Π΄Π΅ΡšΠ΅Ρ‚ΠΎ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° Project V ΠΌΡƒ Π±Π΅Π° отстранСти ΠΎΠΊΠΎΠ»Ρƒ 10 објави Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° ΠΊΠΎΠ΄ со Π½ΠΈΠ·ΠΎΠΊ ΠΊΠ²Π°Π»ΠΈΡ‚Π΅Ρ‚, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΊΠ°ΠΆΡƒΠ²Π° Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° C-инсСрти ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π²ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° Π±Ρ€ΠΈΡˆΠ΅ΡšΠ΅ Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΎΡ‚ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° rm ΠΏΡ€Π΅ΠΊΡƒ ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚ os.system("rm -rf $path"). Автор Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Ρ€Π΅Ρ‡Π΅Π΄Π΅ΠΊΠ° само Π³ΠΈ ΠΈΠ·Π±Ρ€ΠΈΡˆΠ°Π» ΠΏΠΎΡ€Π°ΠΊΠΈΡ‚Π΅, објавСно Ρ‚Ρ€ΠΎΠ» (со ΠΈΠ·ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΈ ја ΠΏΠΎΡ‚Π²Ρ€Π΄ΡƒΠ²Π°Π°Ρ‚ валидноста Π½Π° ΠΊΡ€ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π°, остана Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡ˜Π° Π½Π° ΡƒΡ€Π΅Π΄ΡƒΠ²Π°ΡšΠ΅).

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€