My Lemmy Oracle
  • Communities
  • Create Post
  • heart
    Support Lemmy
  • search
    Search
  • Login
  • Sign Up
sus@programming.dev to Programmer Humor@programming.devEnglish · 16 hours ago

It will happen to you

programming.dev

message-square
24
fedilink
168

It will happen to you

programming.dev

sus@programming.dev to Programmer Humor@programming.devEnglish · 16 hours ago
message-square
24
fedilink
alert-triangle
You must log in or register to comment.
  • spazzman6156@sh.itjust.works
    link
    fedilink
    arrow-up
    15
    ·
    6 hours ago

    Ok I’m inferring here, but why does DSL mean more than one thing in the technology/computer field? The only one I know is Digital Subscriber Line

    • Hasherm0n@lemmy.world
      link
      fedilink
      arrow-up
      24
      ·
      6 hours ago

      The one I’m familiar with is “Domain Specific Language”

      • Mikelius@lemmy.ml
        link
        fedilink
        arrow-up
        7
        ·
        4 hours ago

        I was thinking Damn Small Linux. Felt weird reading “small damn small Linux”

  • Bricked@feddit.org
    link
    fedilink
    arrow-up
    23
    ·
    11 hours ago

    Aaand… it’s Turing-complete!

    • BodilessGaze@sh.itjust.works
      link
      fedilink
      arrow-up
      14
      ·
      9 hours ago

      You now have a moral obligation to port Doom to it

  • Hudell@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    9
    ·
    9 hours ago

    I have created a handful of DSLs over the years and I think most of them were bad ideas. Ironically the most complex one is the one that I think was actually right. It had support for a lot of stuff like loops, functions, custom variables and even some weird shit like async execution of child commands.

    I think what made it work in that case was mostly that the purpose of the DSL was completely different from the others. The system wasn’t designed with a DSL in mind. The DSL was just a simpler way to provide input for something that was already there.

  • mindbleach@sh.itjust.works
    link
    fedilink
    arrow-up
    56
    ·
    16 hours ago

    It’s the configuration complexity clock.

    You hardcode values in an established, full-featured programming language.

    That gets annoying, so you push some into config files.

    That’s not powerful enough, so you let the config files include conditionals.

    Soon your config files are more like scripts, but it’s so easy to keep adding features…

    And suddenly you’re back to hardcoding, but in a newer, jankier programming language.

    • Alavi@programming.dev
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      12 hours ago

      So this is exactly talking about Nix, Guix, chezmoi?

      • zaubentrucker@sopuli.xyz
        link
        fedilink
        arrow-up
        9
        ·
        11 hours ago

        Don’t know about chezmoi, but Nix and Guix use a proper programming language that is also suited as a configuration file format, no?

        So they’re at noon and might just stay there

        • lime!@feddit.nu
          link
          fedilink
          arrow-up
          4
          ·
          10 hours ago

          guix yeah, since they picked a pre-existing one. nix the language is arguably an overgrown dsl which explaits why it’s… real weird.

          • zaubentrucker@sopuli.xyz
            link
            fedilink
            arrow-up
            1
            ·
            3 hours ago

            I guess nix started at noon of the next day lol

    • lime!@feddit.nu
      link
      fedilink
      arrow-up
      11
      arrow-down
      1
      ·
      15 hours ago

      i prefer referring to greenspun’s tenth

    • kibiz0r@midwest.social
      link
      fedilink
      English
      arrow-up
      4
      ·
      13 hours ago

      That’s excellent. I think the initial momentum towards a DSL is basically equivalent to https://en.wikipedia.org/wiki/Inner-platform_effect

  • marcos@lemmy.world
    link
    fedilink
    arrow-up
    13
    ·
    14 hours ago

    Your DSL isn’t embedded on a Turing complete language. That was your mistake.

    • deadbeef79000@lemmy.nz
      link
      fedilink
      arrow-up
      11
      ·
      13 hours ago

      YAML has entered the chat.

      • marcos@lemmy.world
        link
        fedilink
        arrow-up
        5
        ·
        12 hours ago

        Well, for all Turing complete languages around, you picked that one?

        Using Blank Space or Malboge would be the wrong answer too.

        • deadbeef79000@lemmy.nz
          link
          fedilink
          arrow-up
          5
          ·
          9 hours ago

          It seemed to best fit the theme of the thread.

  • SubArcticTundra@lemmy.ml
    link
    fedilink
    arrow-up
    6
    arrow-down
    1
    ·
    11 hours ago

    If your DSL has loops tyen it should be a Python library

    • SubArcticTundra@lemmy.ml
      link
      fedilink
      arrow-up
      3
      arrow-down
      2
      ·
      11 hours ago

      Looking at you, Gradle

      • trem@lemmy.blahaj.zone
        link
        fedilink
        arrow-up
        7
        ·
        11 hours ago

        Gradle uses Groovy or Kotlin for its DSL, though…

        • Chais@sh.itjust.works
          link
          fedilink
          arrow-up
          1
          ·
          3 hours ago

          So python compiled to JVM-bytecode.

          • lukalix98@programming.dev
            link
            fedilink
            arrow-up
            2
            ·
            2 hours ago

            https://www.jython.org/: let me introduce myself

  • Supercrunchy@programming.dev
    link
    fedilink
    arrow-up
    5
    ·
    12 hours ago

    One word: Terraform

    • hypna@lemmy.world
      link
      fedilink
      arrow-up
      8
      ·
      12 hours ago

      You either put it in the DSL or people start writing generators for your DSL.

Programmer Humor@programming.dev

programmer_humor@programming.dev

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: [email protected]

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics
Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 1.02K users / day
  • 3.38K users / week
  • 8.27K users / month
  • 17.7K users / 6 months
  • 1 local subscriber
  • 31.8K subscribers
  • 2.4K Posts
  • 91.8K Comments
  • Modlog
  • mods:
  • Feyter@programming.dev
  • adr1an@programming.dev
  • BurningTurtle@programming.dev
  • Pierre-Yves Lapersonne@programming.dev
  • BE: 0.19.5
  • Modlog
  • Instances
  • Docs
  • Code
  • join-lemmy.org