Top 1,000 Features Creators Resources Extensions Blog Explorer CSV Download
GitHub icon

Dylan

< >

Dylan is a programming language created in 1992.

#373on PLDB 32Years Old 150Repos

Try now: Web ยท Riju

Dylan is a multi-paradigm programming language that includes support for functional and object-oriented programming, and is dynamic and reflective while providing a programming model designed to support efficient machine code generation, including fine-grained control over dynamic and static behaviors. It was created in the early 1990s by a group led by Apple Computer. A concise and thorough overview of the language may be found in the Dylan Reference Manual. Read more on Wikipedia...


Example from Riju:
Module: main define function main (name :: <string>, arguments :: <vector>) format-out("Hello, world!\n"); exit-application(0); end function main; main(application-name(), application-arguments());
Example from hello-world:
define method main (#rest args) princ("Hello World"); end; main();
module: hello-world author: Homer copyright: (c) 1994 Homer version: 1.0 // Hello World in DYLAN define method main (#rest args) princ("Hello world!"); end; main();
Example from Wikipedia:
define method turn-blue (w :: <window>) w.color := $blue; end method;
Dylan Keywords
local in end below until from then for use case elseif else by cleanup finally when begin above select let if otherwise signal afterwards unless while define rename create to export

Language features

Feature Supported Token Example
Macros โœ“
define macro table
  { table(?table-class:expression, ?table-contents) }
    => { let ht = make(?table-class); ?table-contents; ht; }
  { table(?rest:*) } => { table(, ?rest); }

  table-contents:
  { } => { }
  { ?key:expression => ?value:expression, ... }
    => { ht[?key] := ?value; ... }
end macro table
Conditionals โœ“
While Loops โœ“
Strings โœ“ "
"Hello world"
Assignment โœ“ :=
Line Comments โœ“ //
// A comment
Multiple Inheritance โœ“
Comments โœ“
Multiple Dispatch โœ“
Semantic Indentation X

View source

- Build the next great programming language ยท About ยท Acknowledgements ยท Published by Breck's Lab