НаличСн Π΅ Snek 1.5, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° Python Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π·Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ систСми

ΠšΠΈΠΉΡ‚ ΠŸΠ°ΠΊΠ°Ρ€Π΄ (ΠšΠΈΠΉΡ‚ ΠŸΠ°ΠΊΠ°Ρ€Π΄), Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° Debian, Π»ΠΈΠ΄Π΅Ρ€ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° X.Org ΠΈ ΡΡŠΠ·Π΄Π°Ρ‚Π΅Π» Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ X Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ XRender, XComposite ΠΈ XRandR, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» Π½ΠΎΠ²Π° вСрсия Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π‘Π½Π΅ΠΊ 1.5, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ опростСна вСрсия Π½Π° Π΅Π·ΠΈΠΊΠ° Python, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ систСми, ΠΊΠΎΠΈΡ‚ΠΎ нямат Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ рСсурси Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΏΠΈΡ‚ΠΎΠ½ ΠΈ CircuitPython. Snek Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΠΈΡ€Π° Π·Π° пълна ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π΅Π·ΠΈΠΊΠ° Python, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π° Ρ‡ΠΈΠΏΠΎΠ²Π΅ с Π΅Π΄Π²Π° 2KB RAM, 32KB Ρ„Π»Π°Ρˆ ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ 1KB EEPROM. Код Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° разпространява сС ΠΎΡ‚ Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€Π°Π½ ΠΏΠΎΠ΄ GPLv3. Π‘ΡŠΠ±Ρ€Π°Π½ΠΈΡ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ Π·Π° Linux, Windows ΠΈ macOS.

НуТдата ΠΎΡ‚ Π½ΠΎΠ² Π΅Π·ΠΈΠΊ възникна ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° прСподаватСлската ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π½Π° ΠšΠΈΠΉΡ‚ ΠŸΠ°ΠΊΠ°Ρ€Π΄, ΠΊΠΎΠΉΡ‚ΠΎ Π±ΠΈ искал Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π·ΠΈΠΊ Π·Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° студСнти, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ подходящ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° дъски Arduino ΠΈ наподобява Π»ΠΎΠ³ΠΎΡ‚ΠΎ Π½Π° Lego Π² своитС Π·Π°Π΄Π°Ρ‡ΠΈ, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€Π΅Π²ΡŠΡ€Π½Π΅ Π² основа Π·Π° ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΡˆΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ . ΠžΡΠ½ΠΎΠ²Π½ΠΈΡ‚Π΅ изисквания Π·Π° новия Π΅Π·ΠΈΠΊ бяха тСкстови (дСмонстрация Π½Π° Ρ€Π΅Π°Π»Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ Ρ€Π°Π·Ρ‡ΠΈΡ‚Π°Ρ‚ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅Π½ интСрфСйс ΠΈ мишка),
осигуряванС Π½Π° Π±Π°Π·Π° Π·Π° пълно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ ΠΈ компактност Π½Π° Π΅Π·ΠΈΠΊΠ° (Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° няколко часа).

Snek ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° сСмантиката ΠΈ синтаксиса Π½Π° Python, Π½ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° само ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΏΠ° ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π•Π΄Π½Π° ΠΎΡ‚ Ρ†Π΅Π»ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС Π²Π·Π΅ΠΌΠ°Ρ‚ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π°, Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ - ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ Π½Π° Snek ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΏΡŠΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Python 3. студСнтитС, Π·Π°ΠΏΠΎΠ·Π½Π°Ρ‚ΠΈ със Snek, ΠΌΠΎΠ³Π°Ρ‚ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Π΄Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Ρ‚ Π΄Π° ΡƒΡ‡Π°Ρ‚ ΠΏΡŠΠ»Π½ΠΎΡ†Π΅Π½Π΅Π½ Python ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ си знания, ΠΊΠΎΠ³Π°Ρ‚ΠΎ работят с Python.

Snek Π΅ прСнСсСн към ΡˆΠΈΡ€ΠΎΠΊ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ устройства, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 ΠΈ Β΅duino ΠΏΠ»Π°Ρ‚ΠΊΠΈ, осигуряващи Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ GPIO ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€Π½ΠΈ устройства. Π’ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΈ собствСн ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€ Π‘Π½Π΅ΠΊΠ±ΠΎΡ€Π΄ (ARM Cortex M0 с 256KB Flash ΠΈ 32KB RAM), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ със Snek ΠΈΠ»ΠΈ CircuitPython ΠΈ насочСни към ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ LEGO части. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π·Π° създаванС Π½Π° Snekboard ΡΡŠΠ±Ρ€Π°Π½ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π³Ρ€ΡƒΠΏΠΎΠ²ΠΎ финансиранС.

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π½Π° ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° прилоТСния Π½Π° Snek Mu (ΠΏΠ°Ρ‡ΠΎΠ²Π΅ Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°) ΠΈΠ»ΠΈ Π²Π°ΡˆΠ°Ρ‚Π° собствСна ΠΊΠΎΠ½Π·ΠΎΠ»Π½Π° IDE Π‘Π½Π΅ΠΊΠ΄Π΅, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ написан с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Curses ΠΈ прСдоставя интСрфСйс Π·Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΊΠΎΠ΄ ΠΈ взаимодСйствиС с устройството Ρ‡Ρ€Π΅Π· USB ΠΏΠΎΡ€Ρ‚ (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° Π·Π°ΠΏΠ°Π·Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π² eeprom ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° устройството ΠΈ Π΄Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‚Π΅ ΠΊΠΎΠ΄ ΠΎΡ‚ устройството).

НаличСн Π΅ Snek 1.5, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° Python Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π·Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ систСми

Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия:

  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΏΠΎΡ€Ρ‚ Π·Π° ΠΏΠ»Π°Ρ‚ΠΊΠ°Ρ‚Π° Arduino Uno, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° ΠΏΠΎΡ€Ρ‚Π° Π·Π° ΠΏΠ»Π°Ρ‚ΠΊΠ°Ρ‚Π° Duemilanove, Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π²Π° замСститСл Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° Π·Π° Atmega 16u2.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π²Π΅Ρ€ΠΈΠ³ΠΈ Π·Π° сравнСниС (a < b < c).
  • ΠŸΠ»Π°Ρ‚ΠΊΠΈΡ‚Π΅ Adafruit Circuit Playground Express осигуряват Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π°ΡƒΠ΄ΠΈΠΎ ΠΈΠ·Ρ…ΠΎΠ΄.
  • Π—Π° ΠΏΠ»Π°Ρ‚ΠΊΠΈ Duemilanove Π±ΡƒΡƒΡ‚Π»ΠΎΡƒΠ΄ΡŠΡ€ΡŠΡ‚ Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ Optiboot, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Snek, Π±Π΅Π· Π΄Π° сС Π½Π°Π»Π°Π³Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ устройство Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅.

ОсвСн Π‘Π½Π΅ΠΊ, ΠšΠΈΠΉΡ‚ ΠŸΠ°ΠΊΠ°Ρ€Π΄ ΡΡŠΡ‰ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° стандартна C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° PicoLibc, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ устройства с ΠΌΠ°Π»ΠΊΠΎ RAM.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€