XCHAOS:
Každý string tam určitá vzniká nejspíš jako další obecně rozšířitelný meta-objekt...což musí nutně mít nějakou reži
To jiste ma rezii, jako vsechno. Ta rezie je ale dost presne stejna jako v pripade tridnich systemu. Typicky se jedna o pointer bump + vyplneni hlavicky (obvykle 1/2 slova). Dopocujuji precist klasicky paper
Craig Chambers, David Ungar, and Elgin Lee: An Efficient Implementation of SELF, a Dynamically-Typed Object-Oriented Language Based on Prototypes.
u které vím, co se uvnitř ní děje
Domnivam se, ze C toto nesplnuje. Jednoduchy priklad. Mejme nasledujici kod:
#include <stdio.h>
#define BOOLVAL(x) ((x) ? "true" : "false")
#define COMPARE(type1, value1, type2, value2) \
{ \
type1 a = value1; \
type2 b = value2; \
printf("===\n" \
"%s a = %s;\n" \
"%s b = %s;\n", \
#type1, #value1, #type2, #value2); \
printf(" a == b // -> %s\n" \
" a < b // -> %s\n" \
" a > b // -> %s\n", \
BOOLVAL(a == b), \
BOOLVAL(a < b), \
BOOLVAL(a > b)); \
}
int main() {
COMPARE(long, -1, unsigned int, 1);
COMPARE(unsigned int, 1, long, 1);
}
Co vypise?