RUVIDEO
Поделитесь видео 🙏

Grace: an open-source educational programming language

📁 Лайфстайл 👁️ 18 📅 11.10.2024

Michael Homer
http://lca2015.linux.org.au/schedule/30248/view_talk
Grace is a new programming language aimed at education. Grace intends to reflect the last two decades' accumulation of knowledge on language design and teaching, and integrates well-known features that have proved themselves useful in other languages. Grace permits multiple approaches to program design and teaching, including object-, class-, procedure-, and function-based programming, with or without types, and allows moving between these approaches within the same language, so that students can be exposed to multiple approaches and instructors can tailor their courses to the topics they wish to teach.

Supporting users at different stages of understanding is a key goal of Grace. While the main purpose of Grace is to be used for introductory programming courses, it is also a full-powered language incorporating the state of the art in language design. Different approaches and different levels of learning are supported by a feature called dialects: extended and restricted user-defined sub-languages applied on a per-module basis. Through dialects a learner need only see the functionality that is relevant to their stage of learning, with other features that might confuse the issue hidden, and can gradually move to an unrestricted language.

In this talk, I'll outline the principal features of Grace and the philosophy behind them. I'll discuss the design choices made and the paths not taken, and describe the remaining open issues of the language. I'll talk about where language design can help programmers say what they mean, and talk particularly about the interesting pattern-matching and dialect features in Grace.

I'll also look at what educational research tells us about learning to program and programming languages. I'll outline how that has influenced the design of Grace. In the same vein, I’ll give some examples from the design process so far showing how conceptually orthogonal design decisions turn out to be deeply interrelated and require careful balancing with the goals of the language. I'll mention preliminary trials using Grace educationally.

Grace has two existing open-source implementations. I'll introduce both of these, the self-hosted Minigrace compiler and the concurrent JavaScript-based Hopper interpreter. I'll also demonstrate a unique interface built on them that integrates visual programming à la Scratch and textual programming for the same code, to achieve a smoother transition for even earlier programmers.

Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Grace: an open-source educational programming language», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.

Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.

Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!

Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.