Programming Languages, Part A — functional foundations

starstarstarstarstar 0 rates
An introduction to core programming language concepts with a functional focus. ML, Racket, and Ruby illustrate constructs and semantics across paradigms.
Programming Languages — Part A: functional foundations and constructs
Platform:
COURSERA
Partner courses:
Language of course:
English
Subtitles:
Difficulty:
Medium
Format of the event:
Video lectures
Certificate:
Yes
Price
Free
Add to collection
you haven't created a collection yet
Add Collection
+

Course overview

Description generated based on course syllabus and open data.

This course presents key programming language concepts with an emphasis on functional thinking. ML, Racket, and Ruby serve as concrete vehicles to show how constructs, semantics, and style affect correctness and expressiveness.

Who it fits and who it doesn't: programming languages, Part A

Best suited for

  • Developers with basic experience who want deeper insight into language constructs and semantics.
  • Those moving toward functional programming and seeking hands-on practice in ML, Racket, Ruby.
  • Students aiming to systematize ideas: lexical scope, closures, recursion, types.
  • Engineers who value composable, predictable code.

Not ideal for

  • Absolute beginners with no coding practice.
  • Anyone expecting a framework- or tool-centric tutorial.
  • Use cases needing only quick recipes without conceptual depth.

Problem → outcome in learning programming languages (Part A)

  • Problem: Syntax differences obscure common ideas. Outcome: Recognize cross-language concepts and transfer skills.
  • Problem: Unpredictable side effects. Outcome: Functional techniques (immutability, pure functions) for steadier logic.
  • Problem: Difficulty managing abstractions. Outcome: Practice with higher-order functions, modules, and composition.
  • Problem: Hard to reason about correctness. Outcome: Semantic thinking: how language constructs guide specs and tests.

Comparison with alternatives: programming languages and approaches

  • Single-language focus: fast start but narrow view; here, transferable concepts via ML, Racket, Ruby.
  • Theory-only tracks: formalism without practice; here, theory reinforced by implementations.
  • Recipe-only learning: quick yet brittle; here, emphasis on principles that scale.
  • Tool documentation: API details without the big picture; here, semantics and construct design.

Expected outcomes after covering the topics — programming languages, Part A

  • Understanding of lexical scope, closures, expression evaluation, and side-effect control.
  • Ability to apply recursion, pattern matching, and modular design.
  • Hands-on practice in ML, Racket, Ruby: higher-order functions, types, immutability.
  • Habit of selecting language constructs aligned with problem semantics.

Course Description

This course will give you a foundation for understanding how to use language constructs effectively and how to develop correct and elegant programs. By using different languages, you will learn to think more deeply than in terms of the specific syntax of one language.

Evaluation

Only authorized users can leave reviews and rate
Log in »

Recommended Courses


Java розробник + Ai

improveme


18992 hrn.

Python Developer

GoIT

7 months

17515 hrn.

Fullstack Bootcamp

GoIT

5 months

17515 hrn.
0 Reviews
Improveme.Tech
Terms of use
Privacy Policy
© 2022-2026 Improveme.Tech
With the support of the web studio "Site Made in Odessa"
×
×