oh man, so many things. i'll choose the most annoying for me personally. let's say i am creating a new dart source file in a dart package, something i have to do quite often. the import section will look like this:
import "package:crystal/crystal.dart";
super easy. i can add it from memory, or copy an existing module in this package, which will already have that line at the top. it is extremely rare that i ever need to modify this, or add a second line to the import section.meanwhile, let's say i am adding a new python source file to a package. the import section will end up looking like this:
import os, base, dart, execute
from typing import List, Optional
from .build import build
from .build_args import BuildArgs
from .build_type import BuildType, buildTypeList, buildTypeParse
from .build_type import buildTypeStrings, buildTypeValid
... and pretty much every change to this source file will require modifying the imports section, in ways that i definitely have not memorized, even after years of python programming.trying to write a large program in python was, for me, death by a thousand paper cuts like this, which don't occur in dart.