DrScheme is a programming environment for Scheme. It fully integrates a graphicsenriched editor, a parser for multiple variants of Scheme, a functional read-eval-print loop, and an algebraic printer. The environment is especially useful for students, because it has a tower of syntactically restricted variants of Scheme that are designed to catch typical student mistakes and explain them in terms the students understand. The environment is also useful for professional programmers, due to its sophisticated programming tools, such as the static debugger, and its advanced language features, such as units and mixins. Beyond the ordinary programming environment tools, DrScheme provides an algebraic stepper, a context-sensitive syntax checker, and a static debugger. The stepper reduces Scheme programs to values, according to the reduction semantics of Scheme. It is useful for explaining the semantics of linguistic facilities and for studying the behavior of small programs. The syntax checker annotates programs with font and color changes based on the syntactic structure of the program. On demand, it draws arrows that point from bound to binding occurrences of identifiers. It also supports α-renaming. Finally, the static debugger provides a type inference system that explains specific inferences in terms of a value-flow graph, selectively overlaid on the program text.

References in zbMATH (referenced in 29 articles , 1 standard article )

Showing results 1 to 20 of 29.
Sorted by year (citations)

1 2 next

  1. Pavlov, Dmitry A.; Williams, James G.; Suvorkin, Vladimir V.: Determining parameters of moon’s orbital and rotational motion from LLR observations using GRAIL and IERS-recommended models (2016)
  2. Tirronen, Ville; Uusi-Mäkelä, Samuel; Isomöttönen, Ville: Understanding beginners’ mistakes with Haskell (2015)
  3. Caleb Eggensperger: Proof Pad: A New Development Environment for ACL2 (2013) arXiv
  4. Nipkow, Tobias: Teaching semantics with a proof assistant: no more LSD trip proofs (2012)
  5. Culpepper, Ryan; Felleisen, Matthias: Debugging hygienic macros (2010)
  6. Degen, Markus; Thiemann, Peter; Wehr, Stefan: Eager and delayed contract monitoring for call-by-value and call-by-name evaluation (2010)
  7. Stump, Aaron: Directly reflective meta-programming (2010)
  8. Hindle, Abram; Godfrey, Michael W.; Holt, Richard C.: Reading beside the lines: Using indentation to rank revisions by complexity (2009)
  9. Owens, Scott; Reppy, John; Turon, Aaron: Regular-expression derivatives re-examined (2009)
  10. Dillinger, Peter C.; Manolios, Panagiotis; Vroon, Daron; Moore, J Strother: ACL2s: “the ACL2 sedan” (2007)
  11. Krishnamurthi, Shriram; Hopkins, Peter Walton; McCarthy, Jay; Graunke, Paul T.; Pettyjohn, Greg; Felleisen, Matthias: Implementation and use of the PLT scheme web server (2007)
  12. Marceau, Guillaume; Cooper, Gregory H.; Spiro, Jonathan P.; Krishnamurthi, Shriram; Reiss, Steven P.: The design and implementation of a dataflow language for scriptable debugging (2007) ioport
  13. Blume, Matthias; McAllester, David: Sound and complete models of contracts (2006)
  14. Cooper, Gregory H.; Krishnamurthi, Shriram: Embedding dynamic dataflow in a call-by-value language (2006)
  15. Dutchyn, Christopher; Tucker, David B.; Krishnamurthi, Shriram: Semantics and scoping of aspects in higher-order languages (2006)
  16. Findler, Robert Bruce; Flatt, Matthew: Slideshow: functional presentations (2006)
  17. Flatt, Matthew; Findler, Robert Bruce; Felleisen, Matthias: Scheme with classes, mixins, and traits (2006)
  18. Meunier, Philippe; Findler, Robert Bruce; Steckler, Paul; Wand, Mitchell: Selectors make set-based analysis too hard (2005)
  19. Wagenknecht, Christian: Programming paradigms. An introduction based on Scheme. (2004)
  20. Nystrom, Nathaniel; Clarkson, Michael R.; Myers, Andrew C.: Polyglot: An extensible compiler framework for Java (2003)

1 2 next