Dylan is a multi-paradigm programming language that includes support for functional and object-oriented programming (OOP), and is dynamic and reflective while providing a programming model designed to support generating efficient machine code, including fine-grained control over dynamic and static behaviors.
Dylan uses an algebraic infix syntax similar to Pascal or C, but supports an object model not unlike the Common Lisp Object System (CLOS).
It was created in the early 1990s by a group led by Apple Computer.
Here’s our recommended tutorials to learn this language.
1. An Introduction to Dylan by Dylan Hackers
Introduction to Dylan is a tutorial written for those with solid programming experience in C++ or another object-oriented, static language. It provides a gentler introduction to Dylan than does the Dylan Reference Manual (DRM).
2. Dylan Programming by Neal Feinberg, Sonya E. Keene, Robert O. Mathews, P. Tucker Withington
This is a book length tutorial to help anyone learning dynamic, object-oriented programming, whether it be in Dylan, Java, Smalltalk, or Lisp.
The primary goals of this book are to teach you how to program in Dylan, and how to write programs in an object-oriented style. Along the way, the authors hope to convince you to use Dylan. It’s intended to be a practical, elegant, and fun language to use. This book is a tutorial on programming in Dylan, and it does the following:
- Begins with the most basic use of Dylan, and gradually expands to show the more powerful and advanced techniques.
- Gives the flavor of working with the Dylan language in a typical Dylan environment.
- Shows how to define classes and methods that work together to solve a problem.
- Shows how to use many of Dylan’s classes, functions, and features to good effect within the context of an example application.
- Introduces the more advanced features of Dylan, including multiple inheritance, performance, exceptions, and macros.
3. Building Applications With DUIM by Dylan Hackers
This manual, Building Applications using DUIM, provides an introduction to developing your own windowed applications using Open Dylan and, in particular, the interface-building functionality provided by the DUIM library suite. It is designed to complement Getting Started with Open Dylan, which provides information on using the Open Dylan development environment, and the DUIM Reference Manual, which provides a complete reference to the DUIM library suite.
All tutorials in this series:
Free Programming Tutorials | |
---|---|
Java | General-purpose, concurrent, class-based, object-oriented, high-level language |
C | General-purpose, procedural, portable, high-level language |
Python | General-purpose, structured, powerful language |
C++ | General-purpose, portable, free-form, multi-paradigm language |
C# | Combines the power and flexibility of C++ with the simplicity of Visual Basic |
JavaScript | Interpreted, prototype-based, scripting language |
PHP | PHP has been at the helm of the web for many years |
Ruby | General purpose, scripting, structured, flexible, fully object-oriented language |
Assembly | As close to writing machine code without writing in pure hexadecimal |
Swift | Powerful and intuitive general-purpose programming language |
Groovy | Powerful, optionally typed and dynamic language |
Go | Compiled, statically typed programming language |
Pascal | Imperative and procedural language designed in the late 1960s |
Perl | High-level, general-purpose, interpreted, scripting, dynamic language |
R | De facto standard among statisticians and data analysts |
COBOL | Common Business-Oriented Language |
Scala | Modern, object-functional, multi-paradigm, Java-based language |
Fortran | The first high-level language, using the first compiler |
Scratch | Visual programming language designed for 8-16 year-old children |
Lua | Designed as an embeddable scripting language |
Logo | Dialect of Lisp that features interactivity, modularity, extensibility |
Rust | Ideal for systems, embedded, and other performance critical code |
Lisp | Unique features - excellent to study programming constructs |
Ada | ALGOL-like programming language, extended from Pascal and others |
Haskell | Standardized, general-purpose, polymorphically, statically typed language |
Scheme | General-purpose, functional, language descended from Lisp and Algol |
Prolog | General purpose, declarative, logic programming language |
Forth | Imperative stack-based programming language |
Clojure | Dialect of the Lisp programming language |
Julia | High-level, high-performance language for technical computing |
SQL | Access and manipulate data held in a relational database management system |
Erlang | General-purpose, concurrent, declarative, functional language |
VimL | Powerful scripting language of the Vim editor |
OCaml | General-purpose, powerful, high-level language |
Awk | Versatile language designed for pattern scanning and processing |
Racket | Platform for programming language design and implementation |
BASIC | Family of general-purpose, high-level programming languages |
CoffeeScript | A very succinct programming language that transcompiles into JavaScript |
LaTeX | Professional document preparation system and document markup language |
Elixir | Relatively new functional language that runs on the Erlang virtual machine |
Dart | Client-optimized programming language for fast apps |
ABAP | Advanced Business Application Programming |
F# | General purpose, strongly typed, multi-paradigm language. Part of ML |
Chapel | Parallel-programming language in development at Cray Inc. |
Dylan | Multi-paradigm language, supports functional & object-oriented programming |
D | General-purpose systems programming language with a C-like syntax |
Solidity | Object-oriented, high-level language for implementing smart contracts |
XML | Set of rules for defining semantic tags that describe the structure and meaning |
Vala | Object-oriented language with a self-hosting compiler that generates C code |
ECMAScript | Best known as the language embedded in web browsers |
Kotlin | Statically typed, general-purpose programming language with type inference |
TypeScript | Strict syntactical superset of JavaScript, adding optional static typing |
Markdown | Plain text formatting syntax designed to be easy-to-read and easy-to-write |
Pike | Interpreted, general-purpose, high-level, cross-platform, dynamic language |
HTML | HyperText Markup Language |
Factor | Dynamic stack-based language |
Objective-C | General purpose language which is a superset of C |
Standard ML | One of the two main dialects of the ML language |
Alice | Educational language with an integrated development environment |
Agda | Dependently typed functional language based on intuitionistic type theory |
Icon | High-level, general-purpose language |
PureScript | Small strongly, statically typed language with expressive types |
Tcl | Dynamic language based on concepts of Lisp, C, and Unix shells |
Eiffel | Object-oriented language |