فهرست زبان‌های برنامه‌نویسی آموزشی
یک زبان برنامه‌نویسی آموزشی، زبان برنامه‌نویسی ای است که اغلب به عنوان یک ابزار یادگیری طراحی شده‌است، و کمتر به عنوان وسیله برای نوشتن برنامه‌ها برای اجرا به کار می‌رود.
تعداد زیادی از زبان‌های برنامه‌نویسی آموزشی خودشان را در مسیر آموزشی قرار داده‌اند، ب این معنی که، دنباله‌ای از زبان‌ها که برای ساختن حرکات دیگر یک دانش آموز از آسان تا درک و محیط سرگرم‌کننده، تا محیط‌های محیط‌های کامل حرفه‌ای طراحی شده‌است. چند مورد از آن‌ها که بهتر شناخته شده‌اند، در زیر آمده‌اند.
در اصل، کد ماشین اولین و تنها راه برای برنامه نویسی کامپیوترها بود. زبان اسمبلی نوع بعدی زبان بود که استفاده شد، و بنابراین یکی از قدیمی‌ترین خانواده زبان‌های کامپیوتری مورد استفادهٔ امروز است. تعداد زیادی گویش و اجرا معمولاً برای هر معماری پردازنده کامپیوتر در دسترس هستند. این خیلی پایه‌ای است و زبان برنامه‌نویسی سطح پایین نامیده می‌شود. این یکی از سخت‌ترین زبان‌هایی با بی نوع و سفت و سخت بودن است، اما نشان دهندهٔ این است که کامپیوترها چگونه در سطح پایین کار می‌کنند. چندین گویش ساده برای آموزش وجود دارد. زبان‌های سطح پایین باید برای یک معماری پردازش مشخص نوشته شوند و نمی‌توانند بدون ارجاع پردازنده برای همانی که نوشته شده، نوشته یا آموخته شوند. برخلاف زبان‌های سطح بالا، استفاده از یک زبان برنامه‌نویسی آموزشی نیازمند نمایشی از یک پردازنده، چه مجازی چه فیزیکی، است. اسمبلی کمک‌کننده‌ترین زبان برای آموزش دربارهٔ عملیات اساسی پردازندهٔ کامپیوتر است.
بیسیک که مخفف Beginners All-purpose Symbolic Instruction Code است زبانی است که در سال ۱۹۶۴ اختراع شد تا به دانشجویان غیر فنی دسترسی به کامپیوتر دهد. این زبان در دههٔ شصت روی مینی کامپیوترها محبوب شد و به زبان استاندارد برای میکروکامپیوترها در دههٔ ۷۰ و ۸۰ تبدیل شد. هدف‌های بیسیک روی یادگیری سادهٔ برنامه‌نویسی متمرکز شده بود: استفاده از آن برای تازه‌کارها ساده باشد، اینتراکتیو باشد، پیام‌های خطای واضح و دوستانه ساطع کند، سریع پاسخ دهد، و نیازی به فهم سخت‌افزار کامپیوتر یا سیستم عامل نداشته باشد. چیزی که بیسیک را به خصوص برای آموزش مفید کرد اندازهٔ کوچک برنامه‌ها بود. برنامه‌های مفید برای نشان دادن یک مفهوم را می‌شد در یک دوجین خط نوشت. در همین حال بیسیک نیازی به پیچیدگی‌های ریاضیاتی و کامپیوتری نداشت. بیسیک همچنان برای خودآموزی استفاده می‌شود. رجوع کنید به فهرست گویش‌های بیسیک بر اساس پلتفرم. بیسیک مسیری برای یادگیری ارائه می‌کند از oriented basicها مانند Microsoft Small Basic, BASIC-256 و SiMPLE تا بیسیک‌های پیچیده‌تر مانند Visual Basic .NET و Gambas.راه پیشنهادی Sun Microsystems از Greenfoot به BlueJ به Netbeans-BlueJ به Netbeans-Java است.
لیسپ دومین قدیمی‌ترین خانوادهٔ زبان‌های برنامه‌نویسی است که امروزه استفاده می‌شود. به همین دلیل دارای گویش‌ها و پیاده‌سازی‌های بسیاری با سختی‌های متفاوت است. لیسپ در اصل به عنوان یک نمادگذاری مفید ریاضیاتی برای برنامه‌های کامپیوتری براساس حساب لامبدا ساخته شده که این آن را به وسیلهٔ مناسبی برای تدریس نظریه‌های کامپیوتری تبدیل کرده‌است. به عنوان یکی از اولین زبان‌ها لیسپ پیشگام بسیاری از ایده‌ها در علوم کامپیوتر است. شامل ساختمان دادهٔ درخت، مدیریت حافظهٔ خودکار، نوع داده پویا، برنامه‌نویسی شی گرایی، کامپایلر خود میزبان. نام لیسپ از LISt Processing language گرفته شده‌است. لیست‌های پیوندی یکی از ساختمان داده‌های اصلی این زبان هستند و کد منبع لیسپ از تعدادی لیست تشکیل شده‌است. به این ترتیب برنامه‌های لیسپ می‌توانند کد منبع را به عنوان یک ساختمان داده دستکاری کنند؛ که به ماکروسیستم‌هایی می‌انجامند که به برنامه نویسان اجازه می‌دهد سینتکس یا حتی domain-specific languagesهای جدید درون لیسپ ایجاد کند. پس لیسپ‌ها برای یادگرفتن طراحی زبان و ساختن زبان‌های جدید مفیدند. یک مسیر معقول برای یادگیری لوگو و سپس هرکدام از نسخه‌های آموزشی مانند اسکیم یا newLISP و سپس یک نسخهٔ حرفه‌ای مانند Common LISP است.
به عنوان بخشی از پروژهٔ یک لپ تاپ برای هر بچه یک سری از زبان‌های مبتنی بر smalltalk ساخته شده‌است که هرکدام به عنوان معرفی به بعدی طراحی شده‌است. ساختار یادگیری به صورت scratch به etoys به squeak به هر smalltalk است. هر کدام یک محیط گرافیکی ارائه می‌کنند که نه تنها می‌تواند برای آموزش مفاهیم برنامه‌نویسی به کودکان استفاده شود بلکه همچنین می‌توان فیزیک، ریاضیات، تمرینات داستان گویی و غیره را از راه یادگیری محافظه کارانه آموزش داد. Smalltalk و squeak زبان‌های توسعه نرم‌افزار کامل هستند و برای دهه‌ها مورد احترام بودند. Scratch یک ابزار یادگیری برای کودکان است.