Hacker News new | comments | show | ask | jobs | submit login
Maclisp Dunnet (1982) (github.com)
51 points by glassworm 9 days ago | hide | past | web | favorite | 11 comments





Reading through the code, it looks like it would work in most common lisp implementations with only fairly minor modifications. (I think there are a couple things there that might be non-standard-compliant but still behave sanely in most common lisps).

from README_port:

... The difficulty lies in the fact that it used a library called "Comred", which utilized the JSYS (system call) on Tops-20 that allowed for command completion in the standard way of that OS. So (as in the modern Dunnet), when you login tot he computer, you feel like you are on a Tops-20 computer. ...


Yes, Maclisp and Common Lisp are quite close. I'd argue it's more fun to run on a PDP-10 (emulator).

Hm, doesn't look like eating the shovel kills you here?

I always get a kick out of picking that shovel and then forcibly eating it.


I always found the parallel-arrays (or rather parallel-lists) structure of Dunnet aggravating. Isn't there a better textual representation for an adventure game map than this?

    (setq dungeon-map '(
    ;		          no  so  ea  we  ne  se  nw  sw  up  do  in  ot
                        ( 96  -1  -1  -1  -1  -1  -1  -1  -1  -1  -1  -1 ) ;0
                        ( -1  -1   2  -1  -1  -1  -1  -1  -1  -1  -1  -1 ) ;1
                        ( -1  -1   3   1  -1  -1  -1  -1  -1  -1  -1  -1 ) ;2
                        ( -1  -1  -1   2   4   6  -1  -1  -1  -1  -1  -1 ) ;3
                        ( -1  -1  -1  -1   5  -1  -1   3  -1  -1  -1  -1 ) ;4
                        ( -1  -1  -1  -1  255 -1  -1   4  -1  -1  255 -1 ) ;5

This predecessor version has it even a bit worse: https://github.com/Quogic/DunnetPredecessor/blob/master/foo....

I considered a more textual representation, but obfuscation of this serves a purpose. I don't mind people cheating if they must, but it doesn't have to be easy. And sometimes people enjoy reading the code but don't want everything spoiled.

OH. I never even considered that possibly this was intended to be an obfuscated representation. Is it compiled from some other, more direct representation?

Interesting. I thought "Wait, 'MacLisp' in 1982? The Mac wasn't released until '84!"

Turns out that MacLisp has nothing to do with Apple. It came out of MIT's Project on Mathematics and Computation--Project MAC--in the late '60s.


There was a "Macintosh Common Lisp" though; originally named "Coral Common Lisp" and it was forked to what is today known as "Clozure Common lisp" which is not to be confused with any of the various other projects using misspelled versions of the word "closure"

Awesome! Dunnet has a text editor built into it.

Hey All, happy to answer any questions.



Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: