Turing tarpit
ಟ್ಯೂರಿಂಗ್ ಟಾರ್ಪಿಟ್ (ಅಥವಾ ಟ್ಯೂರಿಂಗ್ ಟಾರ್ಪಿಟ್) ಯಾವುದೇ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಅಥವಾ ಕಂಪ್ಯೂಟರ್ ಇಂಟರ್ಫೇಸ್ ಆಗಿದ್ದು ಅದು ಕಾರ್ಯದಲ್ಲಿ ನಮ್ಯತೆಯನ್ನು ನೀಡುತ್ತದೆ ಆದರೆ ಸಾಮಾನ್ಯ ಕಾರ್ಯಗಳಿಗೆ ಕಡಿಮೆ ಅಥವಾ ಯಾವುದೇ ಬೆಂಬಲವನ್ನು ನೀಡದ ಕಾರಣ ಅದನ್ನು ಕಲಿಯಲು ಮತ್ತು ಬಳಸಲು ಕಷ್ಟವಾಗುತ್ತದೆ. ಈ ಪದವನ್ನು 1982 ರಲ್ಲಿ ಅಲನ್ ಪರ್ಲಿಸ್ ಅವರು ಎಪಿಗ್ರಾಮ್ಸ್ ಆನ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ನಲ್ಲಿ ಸೃಷ್ಟಿಸಿದರುಃ ಯಾವುದೇ ಟ್ಯೂರಿಂಗ್ ಸಂಪೂರ್ಣ ಭಾಷೆಯಲ್ಲಿ, ಯಾವುದೇ ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಬರೆಯಲು ಸಾಧ್ಯವಿದೆ, ಆದ್ದರಿಂದ ಅತ್ಯಂತ ಕಠಿಣ ಅರ್ಥದಲ್ಲಿ ಬಹುತೇಕ ಎಲ್ಲಾ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು ಸಮಾನವಾಗಿ ಸಮರ್ಥವಾಗಿವೆ. ಆದಾಗ್ಯೂ, ಆ ಸೈದ್ಧಾಂತಿಕ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿರುವುದು ಆಚರಣೆಯಲ್ಲಿ ಉಪಯುಕ್ತತೆಯಷ್ಟೇ ಅಲ್ಲ. ಟ್ಯೂರಿಂಗ್ ಟಾರ್ಪಿಟ್ಗಳು ಸರಳವಾದ ಅಮೂರ್ತ ಯಂತ್ರವನ್ನು ಹೊಂದಿರುವುದರಿಂದ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಹೊಂದಿವೆ, ಇದು ಸಮಸ್ಯೆಯ ಪರಿಹಾರದಲ್ಲಿ ಬಳಕೆದಾರರು ಅನೇಕ ವಿವರಗಳೊಂದಿಗೆ ವ್ಯವಹರಿಸಬೇಕಾಗುತ್ತದೆ. ಇದಕ್ಕೆ ತದ್ವಿರುದ್ಧವಾದ ಇಂಟರ್ಫೇಸ್ಗಳು ಕಡಿಮೆ ಮಾನವ ಹಸ್ತಕ್ಷೇಪದೊಂದಿಗೆ ಬಹಳ ಸಂಕೀರ್ಣವಾದ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸಬಲ್ಲವು ಆದರೆ ಅವಶ್ಯಕತೆಗಳು ಸ್ವಲ್ಪ ಬದಲಾದರೆ ಬಳಕೆಯಲ್ಲಿಲ್ಲ. ಬ್ರೈನ್ಫಕ್ ಅಥವಾ ಮಾಲ್ಬೋಲ್ಜ್ನಂತಹ ಕೆಲವು ನಿಗೂಢ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳನ್ನು ನಿರ್ದಿಷ್ಟವಾಗಿ "ಟ್ಯೂರಿಂಗ್ ಟಾರ್ಪಿಟ್ಸ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅವು ಟ್ಯೂರಿಂಗ್ ಸಂಪೂರ್ಣ ಭಾಷೆಗಳೆಂದು ವರ್ಗೀಕರಿಸಲು ಅಗತ್ಯವಾದ ಕನಿಷ್ಠ ಕಾರ್ಯವನ್ನು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ. ಅಂತಹ ಭಾಷೆಗಳನ್ನು ಬಳಸುವುದು ಗಣಿತದ ಮನರಂಜನೆಯ ಒಂದು ರೂಪವಾಗಿದೆಃ ಪ್ರೋಗ್ರಾಮರ್ಗಳು ಮೂಲಭೂತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ರಚನೆಗಳನ್ನು ಅತ್ಯಂತ ಕಷ್ಟಕರವಾದ ಆದರೆ ಗಣಿತದ ಸಮಾನವಾದ ಭಾಷೆಯಲ್ಲಿ ಹೇಗೆ ಸಾಧಿಸಬಹುದು ಎಂಬುದನ್ನು ಕಂಡುಹಿಡಿಯಬಹುದು. ಗ್ರೀನ್ಸ್ಪನ್ನ ಹತ್ತನೇ ನಿಯಮವಾದ ರೈಟ್-ಓನ್ಲಿ ಲಾಂಗ್ವೇಜ್ ಜಾವಿನ್ಸ್ಕಿಯ ಸಾಫ್ಟ್ವೇರ್ ಎನ್ವಲಪ್ಮೆಂಟ್ ರೆಫರೆನ್ಸಸ್ನ ನಿಯಮವನ್ನೂ ಸಹ ನೋಡಿ. ಜಿ. ಫಿಶರ್, ಎ. ಸಿ. ಲೆಮ್ಕೆ, "ನಿರ್ಬಂಧಿತ ವಿನ್ಯಾಸ ಪ್ರಕ್ರಿಯೆಗಳುಃ ಕನ್ವಿವಿಯಲ್ ಕಂಪ್ಯೂಟಿಂಗ್ ಕಡೆಗೆ ಕ್ರಮಗಳು", ತಾಂತ್ರಿಕ ವರದಿ ಸಿಯು-ಸಿಎಸ್-369-87, ಕೊಲೊರಾಡೋ ವಿಶ್ವವಿದ್ಯಾಲಯ, ಯುಎಸ್ಎ. ಇ. ಎಲ್. ಹಚಿನ್ಸ್, ಜೆಡಿ. ಹೊಲ್ಲನ್, ಡಿ. ಎ. ನಾರ್ಮನ್, ಟ್ಯೂರಿಂಗ್ ಟಾರ್ಪಿಟ್ನ ಎಸೊಲ್ಯಾಂಗ್ಸ್ನಲ್ಲಿಯೂ ಸಹ ಕಂಡುಬರುತ್ತದೆ. ಅಲನ್ ಟ್ಯೂರಿಂಗ್ ಮನರಂಜನಾ ಗಣಿತ ಗಣನೆಯ ಸಿದ್ಧಾಂತ ಸಾಫ್ಟ್ವೇರ್ ಎಂಜಿನಿಯರಿಂಗ್ ಜಾನಪದ