[–] 17 points 11 months ago

Graphics programming is the most obvious one and it uses it plenty, but really any application that can be modeled as a series of discrete changes will mostly likely be using calculus.

Time series data is the most common form of this, where derivatives are the rate of change from one time step to the next and integrals are summing the changes across a range of time.

But it can even be more abstract than that. For example, there's a recent-ish paper on applying signal processing techniques (which use calculus themselves, btw) to databases for the purposes of achieving efficient incremental view maintenance: https://arxiv.org/abs/2203.16684

The idea is that a database is a sequence of transactions that apply a set of changes to said database. Integrating gets you the current state of the database by applying all of the changes.

  • source
  • parent
  • context
  • [–] 6 points 11 months ago

    Many things that work with time series data use calculus all the time. Both derivatives and integrals are very useful in that context: derivatives being the rate of change at some particular time step, and integrals being the sum of the changes across a range of time steps.

    There's a pretty wide range of applications.

  • source
  • parent
  • context
  • [–] 7 points 11 months ago

    Mongodb is not actually faster. Postgres still beats it in any benchmark that matters.

    Nothing is ever actually schema-less. There is merely explicit and implicit schemas. If you don't want to bother encoding the schema as proper columns and instead want the schema to remain implicitly encoded in JSON, Postgres' jsonb columns do a better job of that than any NoSQL database does.

  • source
  • parent
  • context
  • [–] 11 points 11 months ago* (3 children)

    Any number expressible in ternary, or a base 3 number system, is expressible in binary with a very simple formula to convert between the two. Binary just requires more digits. Fundamentally, a ternary computer is the same as a binary computer in terms of the problems that are decideable.

    Ternary computers have been around for a very long time. They are not new, and I fail to see how they are in any way relevant to AGI (which, to be clear, is something that exists purely in the realm of science fiction and not something we're actually going to be accomplishing any time soon). Ternary computing is certainly interesting and can offer potential performance improvements over binary computers in terms of speed/power efficiency for certain specialized applications, but it's not some magical new computing paradigm or something. Oh, and by the way, there's multiple ways of making ternary systems: -1, 0, and 1 is just one system (called balanced ternary).

    Also, fuzzy logic (or logic that accounts for uncertainty) has been around for a very long time, and in fact, is exactly what neural networks are using right now. It's encoded using floating point numbers between 0 and 1, which, in binary, are encoded using 32 or 64 bits (or more rarely, 16 bits). Again, not anything new.

    And I have no idea what you're talking about with analog.

  • source
  • parent
  • context
  • [–] 5 points 11 months ago* (last edited 11 months ago)

    It looks pretty normal to me as a professional Haskeller, though I suppose it's perhaps slightly cleaner to write it as conditionalBaptize p = fromMaybe p $ baptize p. It's largely just a matter of taste and I'd accept either version when reviewing an MR.

    Edit: I just thought of another version that actually is far too clever and shouldn't be used:

    conditionalBaptize = ap fromMaybe baptize, making use of the monad instance for ->. But yeah, don't do this.

  • source
  • parent
  • context
  • view more: ‹ prev next ›