scheme   19711

« earlier    

"An Introduction to Scheme and its Implementation" (book)
This book is for people who are interested in how Scheme works, or people who are interested in Scheme in terms of programming language design--as well as people who are just interested in using Scheme.

There's not much conflict between these goals, since one of the best ways to learn Scheme--and important principles of language design--is to see how to implement Scheme, in Scheme. We'll illustrate the power of Scheme by showing a couple of simple interpreters for subsets of Scheme, and a simple compiler. A compiler for Scheme can be surprisingly simple and understandable.

This approach is a fairly traditional one, pioneered by Abelson and Sussman in Structure and Interpretation of Computer Programs, which is a widely used and excellent introductory programming text. The approach has been followed, more or less, in several other introductory books on Scheme programming. Most of those books, though, are for beginning programmers. While we think Scheme is a great first language, there are many people out there who've had to suffer through C or Pascal or some other traditional language, and don't want to wade through an introductory programming book just to learn Scheme.

scheme  scheme-lang  book 
2 days ago by rcyphers
6.037 - Structure and Interpretation of Computer Programs
This fast-paced course covers the material in the classic book Structure and Interpretation of Computer Programs — a class previously known at MIT as 6.001. It uses Scheme to introduce students to principles of computation, and to teach thought patterns for computer science. Students are taught to apply structural, procedural, and meta-linguistic abstraction to solve computational problems. Five projects will be assigned and graded.

Prerequisites: some programming experience; high confusion threshold

6.037 focuses on higher-level concepts and abstraction in Scheme, an interesting but esoteric language which is infrequently seen in the wild; The language is light on practicality, but lends itself well to discussing computational theory. The class attempts to cram the entire material of a semester-long MIT course into eight two-hour lectures, with accompanying individual weekly projects, and as such is rather information-dense.
scheme  SICP  MIT 
3 days ago by rcyphers
sindresorhus/iterm2-snazzy: Elegant iTerm2 theme with bright colors
iterm2-snazzy - Elegant iTerm2 theme with bright colors
iterm  colo  scheme 
4 days ago by e2b
linked from impromptu tutorials page for scheme books. This dude is out there like the postscript guy. And like the postscript guy he is a font of amazing info. True early web obscure info treasure trove.
compiler  ebook  lisp  programming_language  scheme 
4 days ago by bytezen
2.4 Pairs, Lists, and Scheme Syntax
A value that prints like an identifier is a symbol. In the same way that parenthesized output should not be confused with expressions, a printed symbol should not be confused with an identifier. In particular, the symbol (quote map) has nothing to do with the map identifier or the predefined function that is bound to map, except that the symbol and the identifier happen to be made up of the same letters.

Indeed, the intrinsic value of a symbol is nothing more than its character content. In this sense, symbols and strings are almost the same thing, and the main difference is how they print. The functions symbol->string and string->symbol convert between them.
5 days ago by pieterkockx
gzochi - Scalable middleware for MMOs
gzochi (/zoʊ-ʧi:/) is a framework for developing massively multiplayer online games. A server container provides services to deployed games, which are written in Guile Scheme, that abstract and simplify some of the most challenging and error-prone aspects of online game development: Concurrency, data persistence, and network communications. A very thin client library can be embedded to provide connectivity for client applications written in any language.
gzochi  guile  game  framework  scheme 
5 days ago by cstanhope
The alternative solution is wrong but it demonstrates a frequent mistake:

(define (func args)
(let ((NOT-PERSISTENT-ACROSS-CALLS! 'initial-value))
6 days ago by pieterkockx
Geiser: Top
Geiser is a collection of Emacs major and minor modes that conspire with one or more Scheme interpreters to keep the Lisp Machine Spirit alive. It draws inspiration (and a bit more) from environments such as Common Lisp’s Slime, Factor’s FUEL, Squeak or Emacs itself, and does its best to make Scheme hacking inside Emacs (even more) fun.
emacs  scheme  geiser  programming  tools  lisp 
7 days ago by haikara
ADTs in Typed Racket with macros
Algebraic data types, or ADTs, are a staple of the ML family of functional programming languages. I won’t go into detail here—I want to focus on the implementation—but they’re a very descriptive way of modeling data that encourages designing functions in terms of pattern-matching, something that Racket is already good at.

Racket also already has a facility for creating custom data structures in the form of structs, which are extremely flexible, but also a little verbose. Racket structs are more powerful than we need, but that means we can implement our ADTs in terms of Racket’s struct system.
scheme  racket  algebraic-data-types  ADT  macro 
8 days ago by rcyphers

« earlier    

related tags

2017-04-21  2017-04-22  2017-04-23  adt  agiletortoise  ajax  algebraic-data-types  algorithms  api  appstore  art  blackfog  book  books  browser  bytecode  c  cad  callback  chez  circleci  cisp  class  clojure  closures  coding  colo  color  colors  colour  commonlisp  compiler  compilers  computer-science  computer  computerscience  control  cool  courses  cs  design-resources  design  design_resources  dev  development  develpment  dialect  documentation  drafts  dsl  dynamic  ebook  edu  eduation  education  emacs  embedded  er  extensible  fields  foursquare  fp  framework  functional  game  geiser  generator  google  graphics  guide  guile  gzochi  haskell  htdp/2e  htdp  ide  interactive  interop  interpretation  interpreter  ios  iterm  javascript  js  lang  language  launch-center-pro  layout  learn  learning  lisp  list  logic  macro  markdown  material  materialdesign  math  minikanren  mit  monad  online  online_book  open  openscad  package  packages  palette  palettes  paper  passback  pdf  physics  portacle  procedural  programming-languages  programming  programming_language  programs  prolog  prompt  python  racket  recursion  reference  regex  ruckus  schema  scheme-lang  science  scripting  sendesk  sicp  structure  sublimetext  sublimetext3  switch  switched  tail-call-optimization  tail-recursion  teach  terminal  texttool  tool  tools  turtle  twitter  typography  ubuntu  unification  url  video  videos  vim  virtualmachines  web  widget  x-callback  zendesk 

Copy this bookmark: