ಬ್ಯಾಷ್ ಲಿಪಿಯಲ್ಲಿ yacc (ಪ್ರಿ-ಬೈಸನ್) ಪಾರ್ಸರ್. ಬ್ಯಾಷ್‌ನಲ್ಲಿ jq ಅಳವಡಿಕೆ

ಕೆಲವು ಅಂತರ್ನಿರ್ಮಿತ ವ್ಯಾಕರಣವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವ ಸಣ್ಣ ಸ್ಮಾರ್ಟ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಬರೆಯುವಲ್ಲಿ ಕೆಲವೊಮ್ಮೆ ಸಮಸ್ಯೆ ಉದ್ಭವಿಸುತ್ತದೆ, ಅಂದರೆ ಒಳಗೆ ಮಿನಿ-ಭಾಷೆಯೊಂದಿಗೆ. ನಾನು ಮೂಲತಃ ಬ್ಯಾಷ್‌ನಲ್ಲಿ jq ನ ಕನಿಷ್ಠ ಅನುಷ್ಠಾನವನ್ನು ಬರೆದಿದ್ದೇನೆ. ಆದರೆ ಅಲ್ಲಿ ಹೆಚ್ಚು "ಸ್ಮಾರ್ಟ್‌ನೆಸ್" ಅನ್ನು ಸೇರಿಸಲಾಯಿತು, ಉಪವಿವರಣೆಗಳ ಪುನರಾವರ್ತಿತ ಪಾರ್ಸಿಂಗ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು ಹೆಚ್ಚು ಕಷ್ಟಕರವಾಗಿತ್ತು. ನಾನು ಇದರಿಂದ ತುಂಬಾ ಆಯಾಸಗೊಂಡಿದ್ದೆನೆಂದರೆ, ಬ್ಯಾಷ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ರಚಿಸಲು LARL(1) yacc (ಪ್ರಿ-ಬೈಸನ್) ಕಂಪೈಲರ್ ಅನ್ನು ಬರೆಯಲು ನಾನು ಮೊದಲು ಪ್ರೇರೇಪಿಸಲ್ಪಟ್ಟಿದ್ದೇನೆ ಮತ್ತು ನಂತರ, ಗಡಿಯಾರದಂತೆ, ನಾನು ಮೂಲ ಮತ್ತು ಉತ್ತಮ ಪರೀಕ್ಷಾ ಕೋಡ್ ಅನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದೇನೆ. ಬ್ಯಾಷ್‌ನಲ್ಲಿ yacc_bash.c ಮಿನಿ-ಜೆಕ್‌ಗಾಗಿ.

ಪೂರ್ಣ ಲೇಖನ:

ಮೂಲ: linux.org.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ