تمثل لغة البرمجة “Turnstile” محاولة لمساعدة مبرمجي Racket في إنشاء لغات مكتوبة مسبقاً. تقوم بذلك من خلال توسيع أشكال تعريف الماكرو في Racket لتسهيل تنفيذ قواعد النوع إلى جانب الكود الماكرو العادي. ونتيجة لذلك، فإن الماكروهات التي تنفذ لغة جديدة مباشرة تقوم بفحص البرنامج مباشرة أثناء التوسع، مما يلغي الحاجة إلى إنشاء فاحص نوع منفصل والاستدعاء إليه. وبالتالي، يبقى تنفيذ لغة مكتوبة مسبقاً كاملاً سلسلة من تعريفات الماكرو التي يمكن استيرادها وتصديرها بالطريقة القياسية التي يعتاد عليها مبرمجو Racket.
قام بإنشاء هذه اللغة Stephen Chang وAlex Knauth وBen Greenman وMilo Turner وMichael Ballantyne، وظهرت لأول مرة في عام 2017. تتميز بأنها لغة نصية تتمتع بإمكانية وجود تعليقات في الشفرة وتحتوي على رموز تعليقات السطر. تم توفير معلومات مفصلة حول متغيرات مختلفة مثل موقع الويب ووصف مستودع GitHub، ولكن يبدو أنها غير متاحة حاليًا.
يتيح Turnstile للمبرمجين إنشاء لغات مكتوبة مسبقاً بشكل متكامل وبناء عليها في بيئة Racket المألوفة، مما يسهل العمل على تطوير اللغات وفحصها بشكل فوري أثناء الاستخدام.