GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Conversation

Notices

  1. Embed this notice
    dave (dthompson@toot.cat)'s status on Tuesday, 03-Dec-2024 11:37:30 JST dave dave

    "Scheme is a simple language", I recite to myself as I begin reading a macro expander implementation that is 3k lines long.

    In conversation about 6 months ago from toot.cat permalink
    • David Wilson repeated this.
    • Embed this notice
      Panicz Maciej Godek (paniczgodek@functional.cafe)'s status on Wednesday, 04-Dec-2024 16:23:01 JST Panicz Maciej Godek Panicz Maciej Godek
      in reply to

      @dthompson FWIW I wrote a simple macro-expander for Scheme in about 500 lines (with explanations/derivation) in my master thesis:

      https://github.com/panicz/master-thesis/blob/master/chapters/C.tex

      It operates on s-expressions rather than syntax objects, but it supports a pattern language akin to 'macro-by-example' with some extensions, and it also tracks the derivation, so that the expanded code can be 'impanded' back (this feature isn't implemented in the above code, but I had it running on my laptop, and in my bitbucket repo that atlassian decided to kill)

      In conversation about 6 months ago permalink

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.