sharad + course   89

First-class, run-time macros from meta-circular evaluators
Matt Might Course http://michaux.ca/articles/scheme-from-scratch-introduction http://matt.might.net/ First-class macros are macros that can be bound to variables, passed as arguments and returned from functions. First-class macros expand and evaluate syntax at run-time. Meta-circular evaluators support a concise implementation of first-class macros. In fact, first-class macros are easier to implement than traditional compile-time macros. A meta-circular evaluator is an interpreter which (1) can evaluate itself and (2) implements each language construct in terms of itself. This article and the attached implementation explain how to implement first-class macros in a meta-circular evaluator.
asm  nasm  as  self-modifying  selfmodifying  smc  implement  implementation  lisp  scheme  compiler  c  machine  code  binary  declarative  imperative  sbcl  defcode  masm  assembly  clisp  assembler  matt  might  course  Delicious 
july 2010 by sharad
« earlier      
per page:    204080120160

related tags

academy  account  accounting  ai  aima  algo  algorithm  algorithms  allegro  allegrograph  alpha  amity  analysis  architecture  ARM  art  article  Articles  as  asm  assembler  assembly  audio  automata  awesome  best  binary  biology  blockchain  blog  blogger  book  Bookmark  books  boot  boot/cd  boot/custom  bootable  bootable/cd  boundless  browse  btc  buffer  buy  c  call  call/cc  callcc  canvas  career  carriculum  cases  catlog  cc  cd  cd/boot  cell  certification  chat  cl  cl-xml  class  classes  cli  clisp  Clojure  closure  code  coding  collaboration  college  com  combinator  comment  commerce  common-lisp  compiler  compilers  compiling  compsci  compute  Computer  computer/os  Computers  computerscience  computing  Concurrent  consultant  content  continuation  continuations  Continued  conts  cool  country  course  courses  cps  crypto  cs  cse  CUDA  culture  debian  declarative  defcode  Delicious  Deliver  dependency  design  developement  developing  development  dictionary  Digital  doc  documentation  download  drscheme  dsa  DSSSL  duplicate  duplication  ebook  eBooks  economics  economist  ed  editorial  edu  education  eip  elearning  electronics  elisp  emacs  engineering  english  english/speaking  Enhanced  env  ep  erlang  error  essay  essays  eth  eu  excellent  expert  extension  extent  feed  feeds  finance  free  freetext  freeware  fun  fundamental  gambit  gcc  gdb  german  global  GNU  good  GPU  graphics  great  greate  ground  grub  gsxml  hacking  hci  health  hiding  hindu  howto  htdp  html  hyperspace  hyperspec  IBM  ideas  idioms  iisc  iit  imperative  implement  implementation  India  information  inspiration  instpointer  int  interactive  interesting  interface  interpretation  interpreter  io  irregular  irregularity  iso  java  jvm  kernel  knowledge  kr  lambda  lambdapaper  lang  language  languages  languages/natural  learn  learning  lecture  lectures  library  Linux  lisp  list  literature  lsip  machine  macro  man  masm  math  matt  me  mhrd  might  mind  mining  mistake  mit  ml  mmm  mode  modren  monad  monads  money  month  moodle  mp3  multicore  multimedia  must  mustread  mustsee  mythical  nasm  National  NetSpeak  Networking  news  nice  noomit  notes  novice  NPTEL  nvidia  nxml  object  ocaml  ocw  online  oops  open  open-source  OpenCourseWare  opensource  org  orgmode  os  outline  overlay  overlays  paip  papaer  paper  paradigam  parallel  pdf  pdfs  perl  personal  philosophy  plan  planner  podcast  pointer  power  powerpc  ppai  ppc  presentation  press  print  printit  problem  processing  processor  program  Programme  programming  programming/parallel  project  prolog  Promise  property  PS3  psychology  python  rdf  read  reading  readit  readlater  reference  remember  remind  reminder  Repositories  repository  research  reson  resoning  Resources  ror  RSS  ruby  sapna  sbcl  scala  schedular  scheme  school  science  sdn  self-modifying  selfmodifying  semantic  setup  sheet  sicp  slime  smc  software  speaking  speaking/english  Squeak  stag  staging  start  Statistics  structure  study  style  stylesheet  swank  sxml  syllabi  syllabus  syntax  systems  systen  t  t3  tc  tech  Technology  text  textbook  theory  todo  tools  topic  toread  tprj  tproject  training  Transformational  TransformationalCompiler  tution  tutorial  Tutorials  type  university  usability  use  useful  utilities  very  video  ware  webdesign  work  world  wr  writing  x86  xebra  xml  xsl  xslt  Xuriella  Y  Ycombinator 

Copy this bookmark:



description:


tags: