/haskell-scheme

A scheme interpreter in haskell (Based on Write yourself a Scheme)

Primary LanguageHaskellGNU General Public License v3.0GPL-3.0

A scheme interpreter in Haskell

Build Status

Going over Write Yourself a Scheme in 48 Hours as mostly a learning experience, deviating at some points and adding small new futures along the way.

  • Currently supported builtins:
    • supports arithmatic expressions with integers +, -, *, /, ^, mod, quotient, remainder
    • comparision operators: =, >, >, /=, >=, <= and string*? where * is =, <, >
    • type tests: string?, number?, symbol?
    • boolean operatiors: &&, ||
    • if statements

Bugs

  • Bugs in parsing
    • having spaces before and end parenthesis causes a parse error. This may be because of the use of SepBy
    • number bases for integer literals doesn't parse since it collides with boolean literals. (e.g. #xF00D)
      • possible fix is to parse literals starting with # in the same function.