• 0 Posts
  • 36 Comments
Joined 1 year ago
cake
Cake day: August 2nd, 2023

help-circle


  • Prescriptivism is mostly just an unprincipled mishmash of shibboleths someone pulled out of their rear end hundreds of years ago, classism, and knee-jerk reactions against language change.

    For example - why do people distinguish less vs fewer to refer to countable vs uncountable nouns? Because someone wrote in 1770 that they thought that distinction was elegant, despite not actually reflecting the way English at the time was spoken.

    Why is ain't "not a word"? Because it originated in the speech of poor people, and was used less commonly by rich people. People roll their eyes at new business-speak because it comes from rich, powerful people, but look down their nose at language innovations from poor hillbillies and other disfavored groups.

    And you can find writings from old prescriptivists complaining about literally every change in the language, such as hating the new ambigious use of singular 'you' when 'thou' was perfectly good and unambiguous or hating phrases like 'very pleased'.


  • Pipoca@lemmy.worldtoMemes@lemmy.mlthose ppl...
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    Reddit very much depends on the subreddits you subscribe to.

    Browsing /r/askhistorians or /r/programming isn't really the same experience as r/memes or whatever. Not logging in to reddit makes it way worse since you only see the popular low-effort threads instead of better niche content.




  • No.

    Honey bees are dying because of parasites and pests, pathogens, poor nutrition, and sublethal exposure to pesticides.

    It's not just one thing. Most of those things on their own won't even kill them. For example, Varroa mites will kill an already weakened hive, but not a healthy one.

    Lawns absolutely contribute to poor nutrition, due to habitat loss. Same with all the mowed grass we have everywhere in suburbia. Monocropped agriculture does as well, because bees do best with a variety of flowers.

    I've let the back part of my property grow wild the past couple years, and it's currently filled with a ton of goldenrod, chicory, and a bunch of other random flowers. You would not beleive the number of honeybees I've seen back there at once, or how loud the buzz was.

    Similarly, there's a reason I see a ton of fireflys in my yard, but I see almost none in my neighbors yards. It's because they're well- manicured green wastelands


  • But I guess non-action and bootlicking while we wait for our thoroughly bribed politicians to do nothing is better.

    Nation-wide action, of course, is best. Something like the green new deal or even a market-based solution like cap-and-trade or a carbon tax.

    On a local level, though, there’s a lot of action that can be done.

    Nation-wide, the biggest category of carbon emissions is transportation, at 28% of all emissions. Over half of all transportation-related emissions are from cars and trucks.

    The amount people drive is closely tied to local urban design, which comes down largely to local zoning regulations and infrastructure design. Those are primarily impacted by the people who show up at town meetings and vote.

    Advocate for walkable, mixed-use zoning, improved bike infrastructure, etc. Most people aren’t “drivers”, “cyclists” or “public transit riders”, they’re people who want to get from point A to point B as easily as possible and will take whatever is best.



  • Pipoca@lemmy.worldtoMemes@lemmy.mlbit of a hot take
    link
    fedilink
    arrow-up
    13
    arrow-down
    6
    ·
    1 year ago

    A large number of gas stations are franchises. Breaking the LCD screens hurts the local franchise owner, not whichever fossil fuel company they’re working with.

    More to the point, breaking LCD screens accomplishes absolutely nothing. Most people don’t drive because they love driving, they drive because of zoning, sprawl and a lack of reasonable alternatives. If you get rid of fossil fuel infrastructure without fixing the underlying car dependency, they’ll be stuck at home.



  • Efficiency in economics has a particular technical definition.

    Pareto efficiency or Pareto optimality is a situation where no action or allocation is available that makes one individual better off without making another worse off

    Free markets are great at producing outcomes that are efficient in a particular technical sense, but not especially equitable.


  • What kind of runtime tag corresponds to generics, exactly?

    Python handles generics essentially the same way that Java 1.0 handles generics: it just kinda punts on it. In Java 1.0, list is a heterogenous collection of Objects. Object, in Java 1.0, allows you to write polymorphic code. But it’s not really the same sort of thing; that’s why they added generics.

    It’s compile-time that has limitations on what it can do, runtime has none.

    Ish.

    There’s typing a la Curry, where semantics don’t depend on static types and typing a la Church, where semantics can depend on static types.

    Haskell’s typeclasses, Scala’s implicits and Rust’s traits are a great example of something that inherently requires Church style typing.

    One of the nice things typeclasses let you do is to write functions that are polymorphic on the return type, and the language will automagically pick the right one based on type inference. For example, in Haskell, the result of the expression fromInteger 1 depends on type ascribed to it. Use it somewhere that expects a double? It’ll generate a double. Use it somewhere you expect a complex number? You’ll get a complex number. Use it somewhere you’re using an automatic differentiation library? You’ll get whatever type that AD library defined.

    That’s fundamentally not something you can do in python. You have to go with the manual implementation passing approach, which is incredibly painful so people do it very sparingly.

    More to the point, though, limitations have both costs and befits. There’s a reason python doesn’t have goto and that strings are immutable, even though those are limitations. The question is always if the costs outweigh the benefits or not.




  • Haskell started out as an academic language.

    The problem Haskell was trying to solve was that in the late 80s, there was a bunch of interest in lazy functional programming but all the research groups had to write their own lazy language before writing a paper on whatever new feature they were interested in. So they banded together to create Haskell as a common research program that they could collectively use.

    It’s been remarkably successful for a research language, and has become more practical over the years in many ways. But it’s always had the motto “avoid (success at all costs)”.



  • Isn’t the whole point of dynamic languages that they’re monotyped? They’re equivalent to a type system with only one type, any. Really, most dynamic languages are equivalent to having a single tagged union of all the different sorts of values in the language.

    If you add additional types, you get into gradual type systems.


  • From his blog post:

    While you may compile dialects into it, you still have to accept the fact that running code in the browser means running JavaScript. So being able to write that, free of any tooling, and free of any strong typing, is a blessing under the circumstances.

    By his logic, JS linters are bad because they’re tooling that restricts your access to all of Javascript. But linters mean you don’t have to read PRs with a fine tooth comb to make sure there’s no footguns like using == instead of ===.

    Also, you could use that same logic to advocate for writing JVM bytecode directly instead of Java/Kotlin/Scala/Clojure/etc.

    The question is really whether tooling pays its way in terms of lower bug rates, code that’s easier for coworkers to read, and code that’s easier to reason about.