Robin Palotai

@robinp
23 Followers
106 Following
569 Posts
Source code archeology and table tennis.
@adrianhon I recall some story where Pokemon Go's thing-to-be-photoed was placed near/on objects since agency wanted to see. So even legit stuff can be misused.
Stealing from Biologists to Compile Haskell Faster - Ian Duncan

The trick that makes GHC’s ApplicativeDo optimization faster is structurally identical to how biologists predict RNA folding.

Ian Duncan
The difference between science fiction and reality is that science fiction has to make sense.

@knowprose @Yuras I know this was not the question, but a problem with AI for producing output (here, code) is that it doesn't have a vision.

Now when I set out to a task, I have a vague idea in my head. It often turns out to be wrong, but my instincts and vision along the way help me correct it.

If I were to hand off the task to the AI, it would perform it as-is (with ~20% of my instructions botched).

Now, if I could formalize that vision well enough for the AI.. a different question.

@barubary @benjaminedwardwebb aside, I got there by looking at the foldl package, whose Fold class has a Cosieve instance... clicikng Cosieve says "A Profunctor p is a Cosieve on f if it is a subprofunctor of Costar f." which is something to wrap my head around at a later time...

@barubary @benjaminedwardwebb

... now the question is, does a Star which has 'Applicative f' as a constraint instead of just 'Functor f' exists and named? Then it could have a class method 'pureStar' defined as 'Star . rmap pure', to achieve the original goal.

Unless #Haskell people know a name for that class, we might call it AppStar or PureStar :)

@barubary @benjaminedwardwebb
guys, you won't believe this, but I accidentally got nearer to solve this.

I believe things of shape 'a -> f b' are more generally called a Star (if we treat a->b as a Profunctor, and f is a Functor). See https://hackage.haskell.org/package/profunctors-5.6.2/docs/Data-Profunctor-Types.html#t:Star

It literally says "lifting a Functor into a Profunctor". Now, obviously since f only has Functor constraint in Star, we don't have pure (so we need to construct by 'Star . rmap pure . f').

(TBC)

Data.Profunctor.Types

If you want performance, or the problem space is sufficiently large/open, you need tradeoffs.

When you have tradeoffs, it bleeds into your interface. Interface and implementation can't go irrespective.

When implementing, you'll keep thinking, will users be able to achieve what they want, and how they need to call this?

When writing interface, think how will the implementation be able to satisfy this?

That's why things are complicated, for me at least, in #programming.

@johnzajac reality check from Hungary, busy indeed, but will it work and to what extent, a different question. Some of those things are really entrenched. This is only the planning phase, with high hopes. Let's see. (And, well, not literally everything. There is some intersection)

We have updated our #PhET scraper for Free online #physics, #chemistry, #biology, earth #science and #math simulations.

Here is the source code: https://github.com/openzim/phet/releases/tag/v3.1.2

Here is the packaged software: https://www.npmjs.com/package/phetscraper

Here are the ZIM #offline archives: https://browse.library.kiwix.org/#category=phet

#FOSS #edtech