3 ms·
Thank you! Until a few years ago, this project ran on PHP. It was then later rewritten in Common Lisp. I published the Common Lisp source code for this website
by susam 4y ago
Thank you! Until a few years ago, this project ran on PHP. It was then later rewritten in Common Lisp. I published the Common Lisp source code for this website only about a week ago. That's why I thought of making this "Show HN" post today.
Until now, the source code published on GitHub has usually been a few versions behind the live website running at https://mathb.in/ https://mathb.in/ but I am hoping that in future, I will keep the source code on GitHub as recent and as updated as possible.
- actondev 4y agoWhat was the motivation and how was the process of the rewrite?
- susam 4y agoThere were two main motivations: simplifying the code and the features, and writing the software in a programming language that I enjoy programming with. The process of the rewrite was roughly like this: simplifying HTML, CSS, and JavaScript code first, then switching from MathJax v2 to MathJax v3, then making corresponding changes in the JavaScript code, then replacing the custom Markdown + LaTeX demultiplexing logic with TeXMe that is specifically designed to solve this problem, and finally rewriting the server-side functionality in Common Lisp. The last activity had roughly six phases of development: writing some of the utility functions I would need later (e.g., parsing posts, storing/retrieving posts, etc.), writing tests, presenting the home page, processing the post submission, presenting post pages, and performing post validations.