• 15 Posts
  • 669 Comments
Joined 1 year ago
cake
Cake day: September 1st, 2023

help-circle








  • Python has typing hints which mypy uses. It’s similar to something javascripts wants to introduce call type annotations. It also has linters and formatters (ruff which does the work of multiple tools in one and is very fast). It also has unit tests built in as well as popular test libraries like pytest and nox and tox for running tests.

    It is up to the maintainers to use the tools they have been given to make projects maintainable. I have worked on and seen very maintainable python projects of various sizes. While legacy code is always a bit of a nightmare (python 2 and < python 3.6), it doesn’t have to be that way and getting into a python project nowadays is way easier than most other languages I’ve tried (maybe also because it’s what I know well).

    Anti Commercial-AI license



  • To answer your question: no guideline (as is typical with nix).

    I always check https://search.nixos.org/options first. There’s a chance it’s a package which requires setup or even a service that has extra config. If it’s not there, then https://search.nixos.org/packages is next.

    When multiple come up, it depends which prefix or suffix they have. Prefixes like pythonPackages. either mean the package is written in a specific programming language with its own packaging intricacies and its easier to keep them under that prefix, other prefixes like neovimPackages. mean it’s a package for a program and something like a plugin or so. Probably more prefixes exist.

    There are some agreed upon but badly documented suffixes (the usual nix style). But if it’s a version suffix, then it’s up to you to decide which one to use. In a comment you mentioned julia, well that’s a programming language so you have to choose the version you want. Sometimes the manual has information on how to use the programming language or one of the wikis.

    Anti Commercial-AI license







  • onlinepersona@programming.devtoLinux@lemmy.mlWhat are your opinions of Guix?
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    edit-2
    11 months ago

    Hackable. It provides Guile Scheme APIs, including high-level embedded domain-specific languages (EDSLs) to define packages and whole-system configurations.

    “provides Guile Scheme APIs”. Yeah, I provide this software in Slint. This software provides Linux APIs. This software provides HTTP APIs. kek

    What a helpful description.

    No idea how you survive Nix’s scattered documentation.

    Nix’s documentation doesn’t try to invent a new way to say “this was written in $language” and has less members like you around. Much easier to deal with.

    CC BY-NC-SA 4.0