• xigoi@lemmy.sdf.org
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    11 months ago

    Each request is a totally independent request that rebuilds the world. There’s no shared state (unless you want there to be).

    I with there was a language with this model, but without the language itself being completely garbage.

    • RonSijm@programming.dev
      link
      fedilink
      arrow-up
      6
      ·
      11 months ago

      Isn’t that the same as modern languages? For example in ASPCore / C#, you can just register all your services with a lifetime scoped to the request, and then there’s no shared state.

      If you want there to be a shared state, you’d just have to register your services with a higher lifetime scope, like with a singleton scope

    • redcalcium@lemmy.institute
      link
      fedilink
      arrow-up
      4
      arrow-down
      1
      ·
      edit-2
      11 months ago

      You can still use CGI with Apache. Apache will execute your program on each request and return its output from stdout as webserver response. If you have a form, it’ll get POSTed to stdin when Apache execute your program. You can write your program with whatever language you want as long as you can read stdin and write to stdout. It’s just tedious af so no one really use it these days. PHP was basically born because people got tired writing CGI program with pearl or C and want something more convenient. But with modern programming languages, perhaps CGI is not too bad, except the one process per request which will absolutely kill your server the moment you have visitors spike.