Minimal scheme interpreter
Submit
Language is selected by the extension of the file. See the list of supported languages to know the extension of your language.
Problem
Write a minimal interpreter for Scheme.
Procedures must be supported:
(display X)
(newline)
(define X Y)
(set! X Y)
(+ X Y)
(- X Y)
(/ X Y)
(* X Y)
(equal? X Y)
(if X Y Z)
(begin X ...)
(lambda (X Y Z ...) BODY)
Options
exec is denied
now post-mortem time, all source codes will be revealed
Sample input:_
(display (+ 1 2))
Sample output:
3
Sample input:_
(define (accgen n)
(lambda (i)
(set! n (+ n i)
n))
(let ((acc (accgen 4))
(display (acc 1)) (newline)
(display (acc 3)) (newline)
(display (acc 50)))
Sample output:
5
8
58
Sample input:_
(define (fact n)
(if (equal? n 0)
1
(* n (fact (- 1 n)))))
(display (fact 4))
Sample output:
24
Ranking
Rank | User | Size | Time | Date | Statistics |
---|
1 | ozy4dm | 25 | 0.2424 | 2008/01/23 08:25:56 | 0B / 8B / 15B |
2 | leonid | 25 | 0.0750 | 2008/01/24 01:10:27 | 0B / 8B / 15B |
3 | shinh | 31 | 0.1230 | 2008/02/01 02:38:20 | 0B / 17B / 12B |
4 | eban | 31 | 0.2010 | 2008/02/01 02:52:34 | 0B / 17B / 13B |
5 | oto-oto-oto | 41 | 0.1038 | 2008/01/21 21:05:49 | 0B / 18B / 20B |
6 | leonid | 23 | 0.1609 | 2008/10/03 14:01:43 | 2B / 6B / 14B |
7 | leonid (alnum) | 68 | 0.1607 | 2008/09/28 05:56:05 | 0B / 42B / 0B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | ott(embed) | 32 | 0.1086 | 2008/01/21 01:19:29 | 0B / 14B / 16B |
2 | nuko | 32 | 0.1328 | 2008/01/21 19:56:35 | 0B / 14B / 16B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | elb | 32 | 0.1407 | 2008/01/19 12:04:52 | 0B / 19B / 13B |
2 | kt3k | 32 | 0.1864 | 2008/01/22 17:44:16 | 0B / 19B / 13B |
3 | hirose | 32 | 0.1315 | 2008/01/24 09:36:23 | 0B / 17B / 15B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | o-cn | 35 | 0.0107 | 2009/12/14 02:19:28 | 0B / ?B / ?B |
2 | pooq | 41 | 0.3958 | 2008/10/06 22:43:28 | 0B / 19B / 20B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | ksk | 52 | 0.0647 | 2008/02/02 03:18:08 | 0B / 35B / 15B |
2 | pla | 67 | 0.0883 | 2008/01/31 23:15:47 | 0B / 39B / 26B |
3 | murky-satyr | 47 | 0.0849 | 2008/06/25 02:43:03 | 0B / 31B / 14B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | kozima | 56 | 0.2536 | 2008/01/21 13:20:20 | 0B / 30B / 22B |
2 | ttmh | 53 | 0.0549 | 2014/08/29 18:28:31 | 0B / 30B / 20B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 40 | 10.8595 | 2009/10/06 19:51:06 | 0B / 22B / 15B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | poop | 65 | 3.0368 | 2008/01/28 17:45:22 | 0B / 49B / 11B |
2 | murky-satyr | 41 | 2.4867 | 2008/03/17 09:41:34 | 0B / 29B / 9B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 68 | 0.0696 | 2009/11/16 17:51:09 | 0B / 44B / 13B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 44 | 0.0689 | 2010/08/23 01:21:03 | 0B / 26B / 16B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 58 | 0.0747 | 2012/04/02 12:35:41 | 0B / 35B / 20B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 53 | 0.1328 | 2009/02/26 23:04:42 | 0B / 30B / 19B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | poop | 61 | 0.0712 | 2008/01/25 11:38:24 | 0B / 35B / 16B |
2 | *yuko* | 43 | 1.8248 | 2009/06/24 09:54:48 | 0B / 25B / 16B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 24 | 6.5201 | 2010/08/10 19:28:00 | 0B / 14B / 8B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | poop | 31 | 0.1916 | 2008/01/27 03:46:49 | 0B / 16B / 13B |
2 | pooq | 28 | 0.2240 | 2008/09/16 12:17:06 | 0B / 14B / 12B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 41 | 0.0377 | 2009/12/06 04:07:59 | 0B / 20B / 18B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 21 | 0.0690 | 2012/03/19 17:07:07 | 0B / 9B / 10B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | ksk | 54 | 0.2490 | 2008/01/24 01:08:05 | 0B / 30B / 21B |
2 | m.ukai | 65 | 0.1127 | 2008/01/25 14:46:13 | 0B / 40B / 23B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | D | 170 | 0.0473 | 2008/01/29 11:23:10 | 0B / 119B / 38B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 54 | 0.0839 | 2009/01/25 08:11:24 | 0B / 34B / 13B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 60 | 0.0660 | 2009/11/14 03:04:51 | 0B / 37B / 13B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 54 | 0.2871 | 2010/01/17 16:29:18 | 0B / 31B / 21B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 49 | 0.2194 | 2009/02/14 21:11:49 | 0B / 32B / 11B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 52 | 3.2168 | 2009/03/26 10:16:30 | 0B / 28B / 22B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | nn | 32 | 0.0450 | 2008/06/18 18:58:05 | 0B / 13B / 19B |
2 | _ | 32 | 0.0221 | 2010/05/27 19:00:33 | 0B / ?B / ?B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | eban | 25 | 0.0194 | 2008/01/20 22:40:06 | 0B / 14B / 6B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 25 | 0.0323 | 2019/07/19 11:41:41 | 0B / ?B / ?B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 38 | 0.0223 | 2010/07/20 15:52:18 | 0B / 11B / 24B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | yshl(bin) | 26 | 0.5255 | 2008/02/05 05:33:25 | 8B / 15B / 1B |
2 | yshl | 34 | 0.5196 | 2008/02/05 05:33:02 | 0B / 24B / 3B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 34 | 3.7162 | 2008/05/31 15:04:00 | 0B / 19B / 13B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | nuko | 105 | 0.0303 | 2008/01/23 22:04:27 | 0B / 0B / 105B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 20 | 0.1151 | 2010/09/09 19:54:50 | 0B / 8B / 9B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | nn | 36 | 0.0682 | 2009/12/13 22:37:19 | 2B / 16B / 17B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 45 | 10.2552 | 2011/02/27 22:03:35 | 0B / 31B / 14B |
Rank | User | Size | Time | Date | Statistics |
---|
1 | pooq | 33 | 2.5053 | 2011/03/21 20:41:55 | 0B / 22B / 4B |
Language Ranking_
Rank | Lang | User | Size | Score |
1 | GolfScript | leonid | 18 | 10000 |
2 | goruby | leonid | 20 | 9000 |
3 | FlogScript | pooq | 20 | 9000 |
4 | K | pooq | 21 | 8571 |
5 | Ruby | leonid | 23 | 7826 |
6 | Perl6 | pooq | 24 | 7500 |
7 | sed | eban | 25 | 7200 |
8 | jq | pooq | 25 | 7200 |
9 | Postscript | yshl(bin) | 26 | 6923 |
10 | J | pooq | 28 | 6428 |
11 | Python | elb | 32 | 5625 |
12 | Perl | ott(embed) | 32 | 5625 |
13 | AWK | nn | 32 | 5625 |
14 | Logo | pooq | 33 | 5454 |
15 | R | pooq | 34 | 5294 |
16 | PHP | o-cn | 35 | 5142 |
17 | JavaScript | murky-satyr | 36 | 5000 |
18 | Vim | nn | 36 | 5000 |
19 | C | ozy4dm | 37 | 4864 |
20 | wake | pooq | 38 | 4736 |
21 | Arc | pooq | 40 | 4500 |
22 | Io | murky-satyr | 41 | 4390 |
23 | A+ | pooq | 41 | 4390 |
24 | Smalltalk | murky-satyr | 42 | 4285 |
25 | BASIC | *yuko* | 43 | 4186 |
26 | Lua | murky-satyr | 44 | 4090 |
27 | Xtal | pooq | 44 | 4090 |
28 | Scala | pooq | 45 | 4000 |
29 | Groovy | murky-satyr | 47 | 3829 |
30 | Scheme | murky-satyr | 47 | 3829 |
31 | REBOL | pooq | 49 | 3673 |
32 | Fortran | *yuko* | 49 | 3673 |
33 | Asymptote | pooq | 52 | 3461 |
34 | Prolog | pooq | 53 | 3396 |
35 | Common LISP | ttmh | 53 | 3396 |
36 | OCaml | ksk | 54 | 3333 |
37 | Pascal | pooq | 54 | 3333 |
38 | Maxima | pooq | 54 | 3333 |
39 | Haskell | lynn | 56 | 3214 |
40 | Icon | pooq | 58 | 3103 |
41 | Curry | pooq | 60 | 3000 |
42 | Tcl | pooq | 68 | 2647 |
43 | Brainfuck | nuko | 105 | 1714 |
44 | Ada | D | 170 | 1058 |
return to the top page