تورینگ (زبان برنامه‌نویسی)

تورینگ یک زبان برنامه‌نویسی شبیه پاسکال است که در ۱۹۸۲ توسط Ric Holt و James Cordy در دانشگاه تورنتوی کانادا ایجاد شد. زبان تورینگ تاثیر گرفته از زبان‌های Euclid، پاسکال و SP/K می‌باشد که از ویژگی‌های این زبان، نحو واضح وروشن، همچنین دارا بودن معانی وابسته به ماشین به شکل مختصر و مفید است.
نام این زبان از نام آلن تورینگ دانشمند علوم کامپیوتر اهل بریتانیا گرفته شده‌است. از زبان تورینگ به طور عمده به عنوان یک زبان آموزشی در سطح دبیرستان و دانشگاه استفاده می‌شود. دو نسخه دیگر Object-Oriented turing و Turing plus برای سیستم‌های مختلف برنامه‌نویسی به وجود آمدند. در سپتامبر ۲۰۰۱، Object-Oriented Turing به Turing تغییر نام داد و زبان اصلی Turing نیز Classic Turing نامیده شد. تورینگ پس از مدتی دیگر توسط «شرکت نرم‌افزاری هولت» حمایت نشد. در حال حاضر مایکروسافت ویندوز تنها پلت فرمی است که از این زبان حمایت می‌کند. تورینگ در ابتدا به طور گسترده در دبیرستان‌های Ontario به عنوان مقدمه‌ای برای برنامه‌نویسی استفاده می‌شد.
در ۲۸ نوامبر ۲۰۰۷، زبان تورینگ که قبلا یک زبان برنامه‌نویسی تجاری بود، نرم‌افزاری رایگان شدکه از وبسایت توسعه دهندگان آن قابل بارگیری است و بدون پرداخت هزینه‌ای می‌توان از آن برای مصارف شخصی، تجاری و آموزشی استفاده کرد.
سازندگان تورینگ، یعنی شرکت نرم‌افزاری هولت، از آن روز دست از کار کشیده‌اند. معلوم نیست آیا تورینگ هنوز در حال توسعه‌است یا نه، اما هیچ انتشار جدیدی از ۲۵ نوامبر ۲۰۰۷ نداشته‌است.
نحو
تورینگ طوری طراحی شده‌است که دارای نحو بسیار ساده، خوانا و همچنین قابل درک به صورت مستقیم و شهودی باشد. اینجا برنامه Hello World! در زبان تورینگ به طور کامل آمده‌است:
put "Hello World!"
زبان تورینگ از سمی کالن و آکولاد اجتناب می‌کند و در عوض از نشانه‌های صریح end برای بیشتر ساختارهای زبان استفاده می‌کند و در اینجا یک برنامه کامل با استفاده از تعریف سنتی تابع بازگشتی برای محاسبه فاکتوریل آورده شده‌است:
% Accepts a number and calculates its factorial
function factorial ( n : int ): real
if n = 0 then
result 1
else
result n * factorial ( n - 1)
end if
end factorial
var n : int
loop
put "Please input an integer: " ..
get n
exit when n >= 0
put "Input must be a non-negative integer."
end loop
put "The factorial of " , n , " is " , factorial ( n )
پیاده سازی باز
در حال حاضر، دو پیاده سازی open source جایگزین وجود دارد، یکی Tplus که یک کامپایلر محلی برای زبان برنامه نویسی سیستم‌های همزمان Turing plus است و دیگری OpenT که یک سیستم جدید است که در حال حاضر در حال توسعه‌است.
Tplus
Tplus یک پیاده سازی open source از زبان تورینگ اصلی است که در دانشگاه تورنتو توسعه یافت و در دانشگاه Queens در اواخر ۱۹۹۰ به لینوکس، سلاریس و مکینتاش منتقل شد. Tplus , Turing را که یک زبان برنامه‌نویسی سیستم‌های همزمان بر اساس زبان تورینگ اصلی است، پیاده‌سازی می‌کند.
برخی، اما نه همه ویژگی‌های Turing plus درزبان فعلی Object-Oriented turing وجود دارند. Turing plus، تورینگ اصلی را با پردازش‌ها و نمایشگرها، همچنین توسط ساختارهای زبان که برای برنامه‌نویسی سیستم احتیاج داریم مانند ورودی – خروجی دودویی، کامپایل جداگانه، متغیرها در آدر س‌های مطلق، تبدیل نوع و دیگر ویژگی‌ها، توسعه می‌دهد.
OpenT
OpenTیک زبان open source، کامپایلر و محیط برنامه‌نویسی (IDE)است که توسط اعضای dteam از علوم کامپیوتر کانادا طراحی شده‌است. این زبان شباهت‌های بسیاری با Turing دارد و بطور کامل با آن سازگار است. OpenT در اصل ایجاد شد تا از خاصیت محفوظ بودن (وابسته به مالک بودن) Turing جلوگیری کند اگر چه پیاده‌سازی کامل تورینگ اصلی Holt Software، در حال حاضر به open-source تبدیل شده‌است.