cons cell implementation in Clisp

Hi all,

I was just wondering how the cons cell is implemented in Clisp and other Lisps. Upon reading briefly, I think that these were registers which can hold 2 pointers (CAR, CDR)... I wanted to know how they are implemented in software? (void *)? but list can hold multiple types, we need to maintain a type of the obj associated with this, for typecasting and stuff. Is there a header for each section (which holds type info and other bookkeeping info). Coming from C land wanted to see how this is implemented. Please share your thoughts or point me to a location where I can get the info.

Thanks.
 
Back
Top