#lang racket
(require [only-in plait test test/exn error print-only-errors])
(define-syntax my-let*
(syntax-rules ()
[(my-let* () body) body]
[(my-let* ([v0 e0] [v1 e1] ...) body)
(let ([v0 e0])
(my-let* ([v1 e1] ...) body))]))
(test (my-let* ([x 1]
[y (+ x 2)]
[x (+ y 3)])
x)
6)