|
|
|
|
|
by ansible
1033 days ago
|
|
What's the overall Scheme community look like these days? How much are new libraries targeting the specifications (like R6RS) vs. just targeting a specific implementation like Racket, Guile or Chicken Scheme? What forces are keeping the various implementations aligned and moving in the same direction? What is driving them apart? What does the future look like? |
|
People who want to write real-world Scheme code have a strong incentive for a single definition of the language so that their code will reliably run on multiple implementations. They want one language and are probably willing to deal with some breakage in places where implementations are alreaday incompatible in order to get there.
People who maintain Scheme implementations want backwards compatibility so that they aren't forced to rewrite a bunch of already working implementation code or try to support multiple different languages at the same time. They don't want to make breaking changes to their implementations and break all of their users in order to converge towards some other implementations' behavior they may not care about.
Teachers want a language that is maximally elegant and minimal. They are perfectly happy to make tweaks to the language to make it incrementally cleaner even if it breaks tons of existing code because most of their code is short-lived anyway.
Reconciling these very different incentives does not sound fun.