ವಿವಿಧ ಟಾರ್ಗೆಟ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳಿಗಾಗಿ ಸಂಕಲನವನ್ನು LLVM ಬಳಸಿಕೊಂಡು ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಗೋ ಪ್ರಾಜೆಕ್ಟ್ನಿಂದ ಮುಖ್ಯ ಟೂಲ್ಕಿಟ್ನಲ್ಲಿ ಬಳಸಲಾದ ಲೈಬ್ರರಿಗಳನ್ನು ಭಾಷೆಯನ್ನು ಬೆಂಬಲಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಕಂಪೈಲ್ ಮಾಡಲಾದ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ಗಳಲ್ಲಿ ನೇರವಾಗಿ ಚಲಾಯಿಸಬಹುದು, ಸ್ವಯಂಚಾಲಿತ ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಬರೆಯಲು Go ಅನ್ನು ಭಾಷೆಯಾಗಿ ಬಳಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ಹೊಸ ಯೋಜನೆಯನ್ನು ರಚಿಸುವ ಪ್ರೇರಣೆಯು ಕಾಂಪ್ಯಾಕ್ಟ್ ಸಾಧನಗಳಲ್ಲಿ ಪರಿಚಿತ ಗೋ ಭಾಷೆಯನ್ನು ಬಳಸುವ ಬಯಕೆಯಾಗಿದೆ - ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ಗಳಿಗಾಗಿ ಪೈಥಾನ್ ಆವೃತ್ತಿ ಇದ್ದರೆ, ಗೋ ಭಾಷೆಗೆ ಇದೇ ರೀತಿಯದನ್ನು ಏಕೆ ರಚಿಸಬಾರದು ಎಂದು ಡೆವಲಪರ್ಗಳು ತರ್ಕಿಸಿದ್ದಾರೆ. ಹೋಗು
ಅದರ ಪ್ರಸ್ತುತ ರೂಪದಲ್ಲಿ, Adafruit, Arduino, BBC ಮೈಕ್ರೋ: ಬಿಟ್, ST ಮೈಕ್ರೋ, ಡಿಜಿಸ್ಪಾರ್ಕ್, ನಾರ್ಡಿಕ್ ಸೆಮಿಕಂಡಕ್ಟರ್, ಮೇಕರ್ಡಿಯರಿ ಮತ್ತು ಫೈಟೆಕ್ನ ವಿವಿಧ ಬೋರ್ಡ್ಗಳನ್ನು ಒಳಗೊಂಡಂತೆ 15 ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ ಮಾದರಿಗಳನ್ನು ಬೆಂಬಲಿಸಲಾಗುತ್ತದೆ. ವೆಬ್ಅಸೆಂಬ್ಲಿ ಫಾರ್ಮ್ಯಾಟ್ನಲ್ಲಿ ಬ್ರೌಸರ್ನಲ್ಲಿ ರನ್ ಮಾಡಲು ಮತ್ತು ಲಿನಕ್ಸ್ಗಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ ಫೈಲ್ಗಳಾಗಿ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಕಂಪೈಲ್ ಮಾಡಬಹುದು. ESP8266/ESP32 ನಿಯಂತ್ರಕಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ
ಯೋಜನೆಯ ಪ್ರಮುಖ ಗುರಿಗಳು:
ಬಹು-ಕೋರ್ ವ್ಯವಸ್ಥೆಗಳಿಗೆ ಬೆಂಬಲವು ಮುಖ್ಯ ಗುರಿಗಳಲ್ಲಿಲ್ಲ,
ಬೃಹತ್ ಸಂಖ್ಯೆಯ ಕೊರೂಟಿನ್ಗಳ ಸಮರ್ಥ ಉಡಾವಣೆ (ಕೊರೊಟೀನ್ಗಳ ಉಡಾವಣೆಯು ಸಂಪೂರ್ಣವಾಗಿ ಬೆಂಬಲಿತವಾಗಿದೆ), ರೆಫರೆನ್ಸ್ ಕಂಪೈಲರ್ gc ಯ ಕಾರ್ಯಕ್ಷಮತೆಯ ಮಟ್ಟವನ್ನು ಸಾಧಿಸುವುದು (ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು LLVM ಗೆ ಬಿಡಲಾಗಿದೆ ಮತ್ತು ಕೆಲವು ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ Tinygo gc ಗಿಂತ ವೇಗವಾಗಿರುತ್ತದೆ) ಮತ್ತು ಸಂಪೂರ್ಣ
ಇದೇ ಕಂಪೈಲರ್ನಿಂದ ಮುಖ್ಯ ವ್ಯತ್ಯಾಸ
ಬಿಡುಗಡೆ 0.7 ರಲ್ಲಿನ ಬದಲಾವಣೆಗಳಲ್ಲಿ "ಟಿನಿಗೊ ಟೆಸ್ಟ್" ಆಜ್ಞೆಯ ಅನುಷ್ಠಾನ, ಹೆಚ್ಚಿನ ಗುರಿ ಬೋರ್ಡ್ಗಳಿಗೆ ಕಸ ಸಂಗ್ರಹಣೆ ಬೆಂಬಲವನ್ನು ಒದಗಿಸುವುದು (ARM ಕಾರ್ಟೆಕ್ಸ್-ಎಂ ಆಧರಿಸಿ) ಮತ್ತು ವೆಬ್ಅಸೆಂಬ್ಲಿ, RISC- ಆಧಾರಿತ HiFive1 ರೆವ್ ಬಿ ಬೋರ್ಡ್ಗೆ ಬೆಂಬಲ. ವಿ ಆರ್ಕಿಟೆಕ್ಚರ್ ಮತ್ತು Arduino nano33 ಬೋರ್ಡ್,
ಸುಧಾರಿತ ಭಾಷಾ ಬೆಂಬಲ (ಗೆಟ್ಟರ್ಗಳು ಮತ್ತು ಸೆಟ್ಟರ್ಗಳನ್ನು ಬಳಸುವ ಬಿಟ್ ಕ್ಷೇತ್ರಗಳಿಗೆ ಬೆಂಬಲ, ಅನಾಮಧೇಯ ರಚನೆಗಳಿಗೆ ಬೆಂಬಲ).
ಮೂಲ: opennet.ru