<feed xmlns='http://www.w3.org/2005/Atom'>
<title>chromatopelma, branch main</title>
<subtitle>Partial r7rs implementation with a focus on ease of implementation and a reusable library. Work in progress.</subtitle>
<id>https://code.roseh.moe/chromatopelma/atom/?h=main</id>
<link rel='self' href='https://code.roseh.moe/chromatopelma/atom/?h=main'/>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/'/>
<updated>2023-07-16T18:22:27Z</updated>
<entry>
<title>Rewrite the macro expander to use set of scopes.</title>
<updated>2023-07-16T18:22:27Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rosehogenson@posteo.net</email>
</author>
<published>2023-07-16T18:22:27Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=88ea4650ff1f1af0635d112e002e6e7847273156'/>
<id>urn:sha1:88ea4650ff1f1af0635d112e002e6e7847273156</id>
<content type='text'>
I no longer have confidence that the timestamp approach will work for
all of the different cases that aren't discussed in the original paper.
The original paper was only about expanding a fixed set of syntax
transformers, and didn't consider defining new transformers.

Set of scopes is an extremely intuitive system, and hopefully that will
mean it's easier to implement without bugs. I think I finally understand
how it works after watching this video: https://youtu.be/Or_yKiI3Ha4
</content>
</entry>
<entry>
<title>Fix an encoding issue for negative numbers.</title>
<updated>2023-05-01T15:23:38Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2023-05-01T15:23:38Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=1c5678f77a61cf84f458376cccbd86a6d6942457'/>
<id>urn:sha1:1c5678f77a61cf84f458376cccbd86a6d6942457</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rewrite most of the compiler.</title>
<updated>2023-05-01T14:56:42Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2023-05-01T14:56:42Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=a89d6c82e981fec7d6e4c975e083d2b9e04467ad'/>
<id>urn:sha1:a89d6c82e981fec7d6e4c975e083d2b9e04467ad</id>
<content type='text'>
This represents a major step back in terms of functionality, and amount
of code. The latter I think constitutes a major win. Next steps are to
reimplement syntax-rules, call/cc, and call-with-values.
</content>
</entry>
<entry>
<title>Fix bugs with recursive macros and empty template.</title>
<updated>2022-09-03T03:05:40Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-09-03T03:05:40Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=112ce5291da35e54c38c4ff1d7a2408a64a98e71'/>
<id>urn:sha1:112ce5291da35e54c38c4ff1d7a2408a64a98e71</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Undo the hacky list constant changes.</title>
<updated>2022-09-03T00:07:29Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-09-03T00:07:29Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=19ff46c53e800132f8d800b909b10f28f53b13e9'/>
<id>urn:sha1:19ff46c53e800132f8d800b909b10f28f53b13e9</id>
<content type='text'>
We will eventually implement list constants using some kind of rodata.
</content>
</entry>
<entry>
<title>Fix some bugs in macros, and add list constants.</title>
<updated>2022-09-01T21:45:28Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-09-01T21:45:28Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=49138077de7c97913c7bcb16099738f6183b39bd'/>
<id>urn:sha1:49138077de7c97913c7bcb16099738f6183b39bd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use reg 255 for swapping.</title>
<updated>2022-08-28T03:34:59Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-08-28T03:23:23Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=cb52f5dd0200f66ba6e6b4a3b1db0da6f60cdf9e'/>
<id>urn:sha1:cb52f5dd0200f66ba6e6b4a3b1db0da6f60cdf9e</id>
<content type='text'>
I wanted to use the top reg, for some reason I thought at the time that
127 was the biggest 8-bit number. Obviously it's 255.
</content>
</entry>
<entry>
<title>Fix more bytes vs words bugs.</title>
<updated>2022-08-28T03:22:21Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-08-28T03:22:21Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=e07c62f447e9f041901812a6e9cda05ae76d92df'/>
<id>urn:sha1:e07c62f447e9f041901812a6e9cda05ae76d92df</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable nil constants.</title>
<updated>2022-08-28T02:31:09Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-08-28T02:31:09Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=b9dec5a520f1b2f5d782993efe75b7227744631c'/>
<id>urn:sha1:b9dec5a520f1b2f5d782993efe75b7227744631c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix a bug in how offsets are calculated.</title>
<updated>2022-08-28T02:30:38Z</updated>
<author>
<name>Rose Hogenson</name>
<email>rhogenson@posteo.net</email>
</author>
<published>2022-08-28T02:30:38Z</published>
<link rel='alternate' type='text/html' href='https://code.roseh.moe/chromatopelma/commit/?id=289fc5ef52ade0f98cc6aa5e85d0edd9e64094de'/>
<id>urn:sha1:289fc5ef52ade0f98cc6aa5e85d0edd9e64094de</id>
<content type='text'>
</content>
</entry>
</feed>
