Den tor. 21. jan. 2021 kl. 05.06 skrev Stuart Hungerford < [email protected]>:
> On Thursday, 21 January 2021 at 10:22:45 UTC+11 Jens Axel Søgaard wrote: > > > Back to your project - what is the goal of the project? > > Making something like GAP perhaps? > > Do you want your users to supply types - or do you want to go a more > dynamic route? > > My project is really aimed at supporting self-directed learning of > concepts from abstract algebra. > I was taught many years ago that to really understand something to try > implementing it in a high level language. > That will soon expose any hidden assumptions or misunderstandings. > That's a very interesting project. You are so to speak optimizing for readability. I immediately get a vision of a SICM-like book, but for algebra instead of classical mechanics. Racket will be a good choice, since macros give you the possibility of experimenting with suitable, easily understood syntax. A tricky choice is to be made: how are the concepts going to be represented as Racket values. Normal structs does not allow multiple inheritance. Looking at a diagram such as the one below, raises the question whether the relationship between the various concepts are to be modelled explicitly or implicitly. [image: image.png] Maybe some kind of interface for each concept is needed? /Jens Axel Link to SICM in case you haven't seen it already. https://mitpress.mit.edu/books/structure-and-interpretation-classical-mechanics Note that the authors of SICM wrote a CAS in Scheme that is used in the book. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/CABefVgzzBkGYb7qPziPGoOGpDZ9QbpO%3DJVyDRrV_DLx5JJFA-w%40mail.gmail.com.

