lisp - How is Racket different from Scheme? -


How is the racquet scheme different from the racket R6RS? What is it added, or taken away, or is it different?

I think the racket is more than one language, it is a platform for languages, but I am talking about main racket quote.

The racket is ultimately based on R5RS, and not the R6RS nor neither a hard superset I do not think it Can be called 'scheme' because it is not backward compatible with any scheme standard.

Most implementations provide extensions, but otherwise are backwards compatible, of course, the compiler coming with the racket is also run in R5RS or R6RS mode. The valid R5 / 6RS scheme running in racket mode can either be rejected, can cause runtime errors, or behave in a different way than it said, the main point where it is not backwards compatible:

  • Anyone in the racket set-cdr! is not and set-car! , rather than set-makers! which works on pairs created in pairs only.
  • Is the racket call letrec in the letrec * / code> R6RS and is not present in R5RS, R5RS and R6RS call letrec racket Does not exist in.
  • In the racket, many things self-
  • The racket case is sensitive, although R6RS is also sensitive
  • racket behaves
  • Code> (...) and [...] does not equal R5RS, but R6RS does.

Perhaps more, but most other rackets have a superset of the plan.


Comments

Popular posts from this blog

c# - sqlDecimal to decimal clr stored procedure Unable to cast object of type 'System.Data.SqlTypes.SqlDecimal' to type 'System.IConvertible' -

Calling GetGUIThreadInfo from Outlook VBA -

Obfuscating Python code? -