ನಿಮ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಬಿಡುಗಡೆ 1.4.0

ನಿಮ್ ಸಿಸ್ಟಮ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಹೊಸ ಆವೃತ್ತಿಯನ್ನು ಬಿಡುಗಡೆ ಮಾಡಲಾಗಿದೆ, ಈ ಸೆಪ್ಟೆಂಬರ್ ತನ್ನ ಒಂದು ವರ್ಷದ ವಾರ್ಷಿಕೋತ್ಸವವನ್ನು ಆಚರಿಸಿತು. ಮೊದಲ ಸ್ಥಿರ ಆವೃತ್ತಿ. ಭಾಷೆಯು ಪೈಥಾನ್‌ಗೆ ಸಿಂಟ್ಯಾಕ್ಸ್‌ನಲ್ಲಿ ಹೋಲುತ್ತದೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯಲ್ಲಿ ಬಹುತೇಕ C++ ನಂತೆ ಇರುತ್ತದೆ. ಈ ಪ್ರಕಾರ FAQ ಭಾಷೆಯು (ಕೊಡುಗೆಯ ಕ್ರಮದಲ್ಲಿ): ಮಾಡ್ಯುಲಾ 3, ಡೆಲ್ಫಿ, ಅದಾ, C++, ಪೈಥಾನ್, ಲಿಸ್ಪ್, ಒಬೆರಾನ್.


C/C++/Objective-C/JS ನಲ್ಲಿ ಕಂಪೈಲ್ ಮಾಡುವ ಸಾಮರ್ಥ್ಯಕ್ಕೆ ಧನ್ಯವಾದಗಳು ಎಲ್ಲೆಡೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಇದು ಬೆಂಬಲಿಸುತ್ತದೆ ಮ್ಯಾಕ್ರೋಗಳು, OOP, ಜೆನೆರಿಕ್ಸ್, ವಿನಾಯಿತಿಗಳು, ಬಿಸಿ ಕೋಡ್ ಸ್ವಾಪ್ ಮತ್ತು ಹೆಚ್ಚು. ಪರವಾನಗಿ: MIT.

ಅತ್ಯಂತ ಗಮನಾರ್ಹ ಬದಲಾವಣೆಗಳು:

  • ARC ನಿಂದ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಬಳಸುವ ಹೊಸ ORC ಕಸ ಸಂಗ್ರಾಹಕವಿದೆ, ಆದರೆ ಅದೇ ಸಮಯದಲ್ಲಿ ವೃತ್ತಾಕಾರದ ಉಲ್ಲೇಖಗಳನ್ನು ವಿಶೇಷ ರೀತಿಯಲ್ಲಿ ನಿರ್ವಹಿಸುತ್ತದೆ. -gc:orc ಆಯ್ಕೆಯಿಂದ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ. ARC/ORC ವ್ಯತ್ಯಾಸಗಳ ಬಗ್ಗೆ ಒಂದು ದೊಡ್ಡ ಲೇಖನವಿದೆ.

  • ಕಟ್ಟುನಿಟ್ಟಾದ ಕಾರ್ಯ ವ್ಯಾಖ್ಯಾನಗಳಿಗಾಗಿ ಒಂದು ಮೋಡ್ ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದು ವಸ್ತುವಿನ ರೂಪಾಂತರಕ್ಕಾಗಿ ಹೆಚ್ಚುವರಿ ಪರಿಶೀಲನೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ. ಪ್ರಾಗ್ಮಾ ಮೂಲಕ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ {.ಪ್ರಾಯೋಗಿಕ: "ಕಟ್ಟುನಿಟ್ಟಾದ ಫಂಕ್ಸ್".} ಅಥವಾ --ಪ್ರಾಯೋಗಿಕ: ಕಟ್ಟುನಿಟ್ಟಾದ ಫಂಕ್ಸ್ ಕೀ ಮೂಲಕ.

  • ಫ್ರಮ್ ಕೀವರ್ಡ್ ಅನ್ನು ಈಗ ಆಪರೇಟರ್ ಆಗಿ ಬಳಸಬಹುದು.

  • .noalias pragma ಸೇರಿಸಲಾಗಿದೆ. ಕೀವರ್ಡ್ ಒದಗಿಸುವ ದಕ್ಷತೆಯನ್ನು ಹೆಚ್ಚಿಸಲು ಇದು C ನಿರ್ಬಂಧಿತ ಕೀವರ್ಡ್‌ಗೆ ನಕ್ಷೆ ಮಾಡುತ್ತದೆ.

  • ನಿರ್ದಿಷ್ಟ ಎಚ್ಚರಿಕೆಗಳನ್ನು ಈಗ --warningAsError[X]:on|off ಮೂಲಕ ದೋಷಗಳಾಗಿ ಪರಿವರ್ತಿಸಬಹುದು.

  • ಹೊಸ ಆಜ್ಞೆ: nim r main.nim [args...], ಇದು main.nim ಅನ್ನು ಕಂಪೈಲ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ರನ್ ಮಾಡುತ್ತದೆ ಮತ್ತು --usenimcache ಅನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ ಇದರಿಂದ ಫಲಿತಾಂಶವನ್ನು $nimcache/main$exeExt ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ, nim c - ನಂತಹ ತರ್ಕವನ್ನು ಬಳಸಿ ಮೂಲಗಳು ಬದಲಾಗದೆ ಇದ್ದಾಗ ಮರುಸಂಕಲನದಿಂದ ಹೊರಬರಲು ಆರ್. ಉದಾಹರಣೆ:

nim r ಕಂಪೈಲರ್/nim.nim --help # ಮೊದಲ ಬಾರಿಗೆ ಸಂಕಲಿಸಲಾಗಿದೆ
ಪ್ರತಿಧ್ವನಿ ಆಮದು OS; echo getCurrentCompilerExe()' | ನಿಮ್ ಆರ್ - # ಇದು ಕೂಡ ಕೆಲಸ ಮಾಡುತ್ತದೆ
nim r ಕಂಪೈಲರ್/nim.nim --fullhelp # ಮರುಸಂಕಲನವಿಲ್ಲದೆ
nim r —nimcache:/tmp ಮುಖ್ಯ # ಬೈನರಿಯನ್ನು /tmp/main ನಲ್ಲಿ ಉಳಿಸಲಾಗಿದೆ

  • ಹೊಸ ಸುಳಿವು -ಸುಳಿವು:msgOrigin ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದು ಕಂಪೈಲರ್ ಎಲ್ಲಿ ದೋಷ/ಎಚ್ಚರಿಕೆ ಸಂದೇಶಗಳನ್ನು ಸೃಷ್ಟಿಸಿದೆ ಎಂಬುದನ್ನು ತೋರಿಸುತ್ತದೆ. ಸಂದೇಶವು ಎಲ್ಲಿಂದ ಬಂದಿದೆ ಎಂಬುದು ಸ್ಪಷ್ಟವಾಗಿಲ್ಲದಿದ್ದಾಗ ಇದು ಸಹಾಯ ಮಾಡುತ್ತದೆ.

  • ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಬದಲಾಯಿಸಲು ಫ್ಲ್ಯಾಗ್ —ಬ್ಯಾಕೆಂಡ್:js|c|cpp|objc (ಅಥವಾ -b:js, ಇತ್ಯಾದಿ) ಸೇರಿಸಲಾಗಿದೆ.

  • nimcache ಗೆ ಬೈನರಿಗಳನ್ನು ಔಟ್‌ಪುಟ್ ಮಾಡಲು --usenimcache ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ.

  • ಕೀಗಳನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ: --oldNewlines, --laxStrings, --oldast, --oldgensym

  • nimsuggest ಯುಟಿಲಿಟಿ ಈಗ ಪೂರ್ವ ಘೋಷಣೆಯನ್ನು ಮಾತ್ರವಲ್ಲದೆ ಡೆಫ್ ವಿನಂತಿಯ ಅನುಷ್ಠಾನದ ಸ್ಥಳವನ್ನೂ ತೋರಿಸುತ್ತದೆ.

ಇದರ ಜೊತೆಗೆ, ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಲೈಬ್ರರಿಗೆ ಅನೇಕ ಬದಲಾವಣೆಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ ಮತ್ತು ಅನೇಕ ದೋಷ ಪರಿಹಾರಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ.

ಮೂಲ: linux.org.ru