Warning: mkdir(): No space left on device in /var/www/hottg/post.php on line 59

Warning: file_put_contents(aCache/aDaily/2025-07-22/post/DevOPSitsec/--): Failed to open stream: No such file or directory in /var/www/hottg/post.php on line 72
πŸ–₯ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ язык программирования Gauntlet @DevOps
TG Telegram Group & Channel
DevOps | United States America (US)
Create: Update:

πŸ–₯ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ язык программирования Gauntlet, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠΉ возмоТности Go

ДоступСн ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Π»ΡŒΡ„Π°-выпуск языка программирования Gauntlet, надстройки Π½Π°Π΄ языком Go, Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅ΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС Gauntlet ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ всС возмоТности языка Go, Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² прСдставлСниС Π½Π° языкС Go ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ экосистСмой Go Π±Π΅Π· нСобходимости задСйствования обвязок (binding).

Π Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ инструмСнтарий написан Π½Π° языкС F# ΠΈ распространяСтся ΠΏΠΎΠ» Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv3. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ΄ΠΎΠΌ прСдоставляСтся Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρƒ VSCode.

Π Π΅ΡˆΠ°Π΅ΠΌΡ‹Π΅ Π² Gauntlet ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹:

β€’ Назойливый Π²Ρ‹Π²ΠΎΠ΄ ошибок, связанных с Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ (Gauntlet добавляСт для всСх Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Π³Π»ΡƒΡˆΠΊΠΈ Π²ΠΈΠ΄Π° "_ = a").
β€’ Π Π°Π·Π΄ΡƒΡ‚Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок. Π’ Gauntlet вмСсто условных Π±Π»ΠΎΠΊΠΎΠ² Π²ΠΈΠ΄Π° "if err != nil" ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ однострочныС выраТСния "try-with".
β€’ Назойливый способ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΈ экспорта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Go Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ экспортируСмыС ΠΈΠΌΠ΅Π½Π° Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΈΡΡŒ Π½Π° Π·Π°Π³Π»Π°Π²Π½ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ).
β€’ ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ‚Π΅Π½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°. Π’ Gauntlet ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ выраТСния Π²ΠΈΠ΄Π° 'let properWord = @String len(lines) > 1 ? "lines" : "line"'.
β€’ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ синтаксиса switch-case.
β€’ УслоТнённыС Ρ†ΠΈΠΊΠ»Ρ‹ "for". Π’ Gauntlet ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ "for let _, c in "Hello" {" вмСсто "for _, c := range "Hello" {".
β€’ НСобычный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания (":=" для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ объявлСния ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…; "=" для измСнСния значСния ΡƒΠΆΠ΅ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…).
β€’ ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ (Π² Gauntlet поддСрТиваСтся Π²Ρ‹Π·ΠΎΠ² Π²ΠΈΠ΄Π° 'let trimmedLines = fileContentStrVersion => strings.trimSpace(_) => strings.split(_, "\n")'.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности Gauntlet:

β€’ Бинтаксис "when-is" ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° switch.case, Π½ΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ выраТСниями.
β€’ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° pipe-ΠΊΠ°Π½Π°Π»ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "10 => add(_, 10) => add(_, 30) => divide(_, 2)".
β€’ ВыраТСния "try .. with" ΠΈ "force .. with".
β€’ Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ "wrapper" для создания псСвдонимов Ρ‚ΠΈΠΏΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. "wrapper Int Dollars").


βœ”οΈ Github
βœ”οΈ Gauntlet
βœ”οΈ ΠΠΎΠ²ΠΎΡΡ‚ΡŒ

#Gauntlet #golang

@golang_google

Forwarded from Golang
πŸ–₯ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ язык программирования Gauntlet, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠΉ возмоТности Go

ДоступСн ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Π»ΡŒΡ„Π°-выпуск языка программирования Gauntlet, надстройки Π½Π°Π΄ языком Go, Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅ΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС Gauntlet ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ всС возмоТности языка Go, Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² прСдставлСниС Π½Π° языкС Go ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ экосистСмой Go Π±Π΅Π· нСобходимости задСйствования обвязок (binding).

Π Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ инструмСнтарий написан Π½Π° языкС F# ΠΈ распространяСтся ΠΏΠΎΠ» Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv3. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ΄ΠΎΠΌ прСдоставляСтся Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρƒ VSCode.

Π Π΅ΡˆΠ°Π΅ΠΌΡ‹Π΅ Π² Gauntlet ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹:

β€’ Назойливый Π²Ρ‹Π²ΠΎΠ΄ ошибок, связанных с Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ (Gauntlet добавляСт для всСх Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Π³Π»ΡƒΡˆΠΊΠΈ Π²ΠΈΠ΄Π° "_ = a").
β€’ Π Π°Π·Π΄ΡƒΡ‚Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок. Π’ Gauntlet вмСсто условных Π±Π»ΠΎΠΊΠΎΠ² Π²ΠΈΠ΄Π° "if err != nil" ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ однострочныС выраТСния "try-with".
β€’ Назойливый способ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΈ экспорта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Go Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ экспортируСмыС ΠΈΠΌΠ΅Π½Π° Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΈΡΡŒ Π½Π° Π·Π°Π³Π»Π°Π²Π½ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ).
β€’ ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ‚Π΅Π½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°. Π’ Gauntlet ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ выраТСния Π²ΠΈΠ΄Π° 'let properWord = @String len(lines) > 1 ? "lines" : "line"'.
β€’ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ синтаксиса switch-case.
β€’ УслоТнённыС Ρ†ΠΈΠΊΠ»Ρ‹ "for". Π’ Gauntlet ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ "for let _, c in "Hello" {" вмСсто "for _, c := range "Hello" {".
β€’ НСобычный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания (":=" для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ объявлСния ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…; "=" для измСнСния значСния ΡƒΠΆΠ΅ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…).
β€’ ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ (Π² Gauntlet поддСрТиваСтся Π²Ρ‹Π·ΠΎΠ² Π²ΠΈΠ΄Π° 'let trimmedLines = fileContentStrVersion => strings.trimSpace(_) => strings.split(_, "\n")'.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности Gauntlet:

β€’ Бинтаксис "when-is" ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° switch.case, Π½ΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ выраТСниями.
β€’ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° pipe-ΠΊΠ°Π½Π°Π»ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "10 => add(_, 10) => add(_, 30) => divide(_, 2)".
β€’ ВыраТСния "try .. with" ΠΈ "force .. with".
β€’ Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ "wrapper" для создания псСвдонимов Ρ‚ΠΈΠΏΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. "wrapper Int Dollars").


βœ”οΈ Github
βœ”οΈ Gauntlet
βœ”οΈ ΠΠΎΠ²ΠΎΡΡ‚ΡŒ

#Gauntlet #golang

@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ‘Ž9πŸ€ͺ4❀3πŸ‘3πŸ”₯2πŸ–•1


>>Click here to continue<<

DevOps






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)


Warning: Undefined array key 3 in /var/www/hottg/function.php on line 115

Fatal error: Uncaught mysqli_sql_exception: Too many connections in /var/www/db.php:16 Stack trace: #0 /var/www/db.php(16): mysqli_connect() #1 /var/www/hottg/function.php(212): db() #2 /var/www/hottg/function.php(115): select() #3 /var/www/hottg/post.php(351): daCache() #4 /var/www/hottg/route.php(63): include_once('...') #5 {main} thrown in /var/www/db.php on line 16