▲ | skrishnamurthi 3 days ago | ||||||||||||||||
Racket is a rich and powerful language, but it is also designed with certain specific ideas in mind. You can learn more about the "zen" of Racket here: https://cs.brown.edu/~sk/Publications/Papers/Published/fffkb... That might help you decide whether Racket will help you with what you're trying to brush up on. | |||||||||||||||||
▲ | h4ch1 3 days ago | parent [-] | ||||||||||||||||
Thank you for the response professor, really appreciate it from one of the creators of the language itself; I did give your document a read and my (naive) understanding is you basically create DSLs for each sub-part of the problem you're trying to solve? >A LOP-based software system consists of multiple, cooperating components, each written in domain-specific languages. and >cooperating multi-lingual components must respect the invariants that each participating language establishes. So basically you're enforcing rules/checks at the language level rather than compile time? How would you recommend a complete novice attain this sort of state of mind/thought process while working in this language? Because my thoughts go simply to creating types and enforcing type-checking coupled with pure functions to avoid successful-fail at runtime programs. Also how would one navigate the complexity of multiple abstractions while debugging? The paper also mentions a web-server language (footnote 27), if I use racket will I be productive "out of the box" or is the recommended path to take is writing a web server language first. Thank you again for taking the time to respond, and please do forgive me for these naive questions. | |||||||||||||||||
|