Third-generation programming language
ಮೂರನೇ ತಲೆಮಾರಿನ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯು (3ಜಿಎಲ್) ಉನ್ನತ ಮಟ್ಟದ ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಾಗಿದ್ದು, ಇದು ನಾಲ್ಕನೇ ಮತ್ತು ಐದನೇ ತಲೆಮಾರಿನ ಮೇಲೆ ಕಡಿಮೆ ನಿರ್ದಿಷ್ಟ ಗಮನವನ್ನು ಹೊಂದಿರುವಾಗ, ಎರಡನೇ ತಲೆಮಾರಿನ ಮೊದಲ ತಲೆಮಾರಿನ ಮತ್ತು ಜೋಡಣೆ ಭಾಷೆಗಳ ಯಂತ್ರ ಸಂಕೇತಕ್ಕಿಂತ ಹೆಚ್ಚು ಯಂತ್ರ-ಸ್ವತಂತ್ರ ಮತ್ತು ಪ್ರೋಗ್ರಾಮರ್-ಸ್ನೇಹಿಯಾಗಿರುತ್ತದೆ. ಸಾಮಾನ್ಯ ಮತ್ತು ಐತಿಹಾಸಿಕ ಮೂರನೇ ತಲೆಮಾರಿನ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳ ಉದಾಹರಣೆಗಳೆಂದರೆ ಆಲ್ಗೋಲ್, ಬೇಸಿಕ್, ಸಿ, ಕೋಬೋಲ್, ಫೋರ್ಟ್ರಾನ್, ಜಾವಾ ಮತ್ತು ಪ್ಯಾಸ್ಕಲ್. ಗುಣಲಕ್ಷಣಗಳು 3ಜಿಎಲ್ಗಳು ಹೆಚ್ಚು ಯಂತ್ರ-ಸ್ವತಂತ್ರ ಮತ್ತು ಹೆಚ್ಚು ಪ್ರೋಗ್ರಾಮರ್-ಸ್ನೇಹಿಯಾಗಿವೆ. ಇದು ಒಟ್ಟು ದತ್ತಾಂಶ ಪ್ರಕಾರಗಳಿಗೆ ಸುಧಾರಿತ ಬೆಂಬಲದಂತಹ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಒಳಗೊಂಡಿದೆ ಮತ್ತು ಪರಿಕಲ್ಪನೆಗಳನ್ನು ಕಂಪ್ಯೂಟರ್ಗೆ ಅಲ್ಲ, ಪ್ರೋಗ್ರಾಮರ್ಗೆ ಅನುಕೂಲಕರವಾದ ರೀತಿಯಲ್ಲಿ ವ್ಯಕ್ತಪಡಿಸುತ್ತದೆ. ಕಂಪ್ಯೂಟರ್ ಅನಿವಾರ್ಯವಲ್ಲದ ವಿವರಗಳನ್ನು ನೋಡಿಕೊಳ್ಳುವ ಮೂಲಕ ಮೂರನೇ ತಲೆಮಾರಿನ ಭಾಷೆಯು ಎರಡನೇ ತಲೆಮಾರಿನ ಭಾಷೆಯನ್ನು ಸುಧಾರಿಸುತ್ತದೆ. 3ಜಿಎಲ್ಗಳು ಹಿಂದಿನ ಪೀಳಿಗೆಯ ಭಾಷೆಗಳಿಗಿಂತ ಹೆಚ್ಚು ಅಮೂರ್ತವಾಗಿವೆ ಮತ್ತು ಆದ್ದರಿಂದ ಅವುಗಳ ಮೊದಲ ಮತ್ತು ಎರಡನೇ ಪೀಳಿಗೆಯ ಸಹವರ್ತಿಗಳಿಗಿಂತ ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಗಳೆಂದು ಪರಿಗಣಿಸಬಹುದು. 1950ರ ದಶಕದ ಕೊನೆಯಲ್ಲಿ ಮೊದಲ ಬಾರಿಗೆ ಪರಿಚಯಿಸಲಾದ ಫೋರ್ಟ್ರಾನ್, ಆಲ್ಗೋಲ್ ಮತ್ತು ಕೋಬೋಲ್ಗಳು ಆರಂಭಿಕ 3ಜಿಎಲ್ಗಳಿಗೆ ಉದಾಹರಣೆಗಳಾಗಿವೆ. ಇಂದಿನ ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ ಭಾಷೆಗಳಾದ ಸಿ, ಸಿ + +, ಸಿ #, ಜಾವಾ, ಬೇಸಿಕ್ ಮತ್ತು ಪ್ಯಾಸ್ಕಲ್ ಸಹ ಮೂರನೇ ತಲೆಮಾರಿನ ಭಾಷೆಗಳಾಗಿವೆ, ಆದಾಗ್ಯೂ ಈ ಪ್ರತಿಯೊಂದು ಭಾಷೆಗಳನ್ನು ಇತರ ಸಮಕಾಲೀನ ಗುಣಲಕ್ಷಣಗಳ ಆಧಾರದ ಮೇಲೆ ಇತರ ವರ್ಗಗಳಾಗಿ ವಿಂಗಡಿಸಬಹುದು. ಹೆಚ್ಚಿನ 3ಜಿಎಲ್ಗಳು ರಚನಾತ್ಮಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ. ಅನೇಕರು ಆಬ್ಜೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತಾರೆ. ಈ ರೀತಿಯ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಕೇವಲ 3ಜಿಎಲ್ ಆಗಿರುವುದಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿ ಒಂದು ಭಾಷೆಯನ್ನು ವಿವರಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಸಿ, ಫೋರ್ಟ್ರಾನ್ ಅಥವಾ ಪ್ಯಾಸ್ಕಲ್ನಂತಹ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯು ನಿರ್ದಿಷ್ಟ ರೀತಿಯ ಕಂಪ್ಯೂಟರ್ನಿಂದ ಹೆಚ್ಚು ಕಡಿಮೆ ಸ್ವತಂತ್ರವಾಗಿರುವ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಬರೆಯಲು ಪ್ರೋಗ್ರಾಮರ್ಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಅಂತಹ ಭಾಷೆಗಳನ್ನು ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಗಳೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅವು ಮಾನವ ಭಾಷೆಗಳಿಗೆ ಹತ್ತಿರವಾಗಿವೆ ಮತ್ತು ಯಂತ್ರ ಭಾಷೆಗಳಿಂದ ಮತ್ತಷ್ಟು ದೂರದಲ್ಲಿವೆ, ಆದ್ದರಿಂದ ಅವುಗಳಿಗೆ ಸಂಕಲನ ಅಥವಾ ವ್ಯಾಖ್ಯಾನದ ಅಗತ್ಯವಿರುತ್ತದೆ. ಇದಕ್ಕೆ ವ್ಯತಿರಿಕ್ತವಾಗಿ, ಯಂತ್ರ ಭಾಷೆಗಳನ್ನು ಕೆಳಮಟ್ಟದ ಭಾಷೆಗಳೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅವುಗಳನ್ನು ಹೆಚ್ಚಿನ ಅನುವಾದದ ಅಗತ್ಯವಿಲ್ಲದೇ ಭೌತಿಕ ಯಂತ್ರಾಂಶಕ್ಕಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ. ಕೆಳಮಟ್ಟದ ಭಾಷೆಗಳಿಗಿಂತ ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಗಳ ಮುಖ್ಯ ಪ್ರಯೋಜನವೆಂದರೆ ಅವುಗಳನ್ನು ಓದುವುದು, ಬರೆಯುವುದು ಮತ್ತು ನಿರ್ವಹಿಸುವುದು ಸುಲಭ. ಅಂತಿಮವಾಗಿ, ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲಾದ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಕಂಪೈಲರ್ ಮೂಲಕ ಯಂತ್ರ ಭಾಷೆಗೆ ಅಥವಾ ಇಂಟರ್ಪ್ರಿಟರ್ನಿಂದ ನೇರವಾಗಿ ನಡವಳಿಕೆಗೆ ಅನುವಾದಿಸಬೇಕು. ಈ ಪ್ರೋಗ್ರಾಂಗಳು ವಿವಿಧ ಯಂತ್ರಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದಾಗಿತ್ತು (ಅವು ಒಯ್ಯಬಲ್ಲವು) ಆದ್ದರಿಂದ ಅವು ಯಂತ್ರ-ಸ್ವತಂತ್ರವಾಗಿದ್ದವು. ಹೊಸ, ಹೆಚ್ಚು ಅಮೂರ್ತ ಭಾಷೆಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದಂತೆ, ಉನ್ನತ ಮತ್ತು ಕೆಳಮಟ್ಟದ ಭಾಷೆಗಳ ಪರಿಕಲ್ಪನೆಯು ತುಲನಾತ್ಮಕವಾಗಿ ಮಾರ್ಪಟ್ಟಿದೆ. ನಾಲ್ಕನೇ ತಲೆಮಾರಿನ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳ ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಮತ್ತು 1990ರ ದಶಕದಲ್ಲಿ ಅತ್ಯಂತ ಉನ್ನತ ಮಟ್ಟದ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತಿದ್ದ ಪೈಥಾನ್, ರೂಬಿ ಮತ್ತು ಕಾಮನ್ ಲಿಸ್ಪ್ನಂತಹ ಭಾಷೆಗಳಿಗೆ ಹೋಲಿಸಿದರೆ ಅನೇಕ ಆರಂಭಿಕ "ಉನ್ನತ ಮಟ್ಟದ" ಭಾಷೆಗಳನ್ನು ಈಗ ತುಲನಾತ್ಮಕವಾಗಿ ಕಡಿಮೆ ಮಟ್ಟದ ಭಾಷೆಗಳೆಂದು ಪರಿಗಣಿಸಲಾಗಿದೆ. ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಪೀಳಿಗೆಯ ಡೊಮೈನ್-ನಿರ್ದಿಷ್ಟ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಉಲ್ಲೇಖಗಳು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ವರ್ಗೀಕರಣವನ್ನು ಸಹ ನೋಡಿ.