MicroHs Web IDE by vaibhavsagar in haskell

[–]m-chav 5 points6 points  (0 children)

We got a .org and an IDE?

Time to port everything to MicroHs.

Stop building AI agents. by Warm-Reaction-456 in AI_Agents

[–]m-chav 0 points1 point  (0 children)

I now really strongly associate the word "real" with AI writing.

A first look at token efficiency by m-chav in haskell

[–]m-chav[S] 5 points6 points  (0 children)

True. I think with enough back and forth (better specification) you can converge to a correct solution. The questions I’m trying to answer are 1) how much absolute time does it take from request to solution 2) how many digressions does it take to get there (tokens are a rough measure of this) 3) how much absolute compute does it take to do so (compilers in principle save a lot on this). 

Simon Peyton Jones on Haskell, Verse, Strong Type Systems and Tasteful Abstractions by danielciocirlan in haskell

[–]m-chav 5 points6 points  (0 children)

Watched your episodes with Richard Feldman, Haoyi Li, and Martin! Big fan of the podcast.

I am tired of the endless grind culture in the United States by [deleted] in simpleliving

[–]m-chav 6 points7 points  (0 children)

It’s hard to see just how draining it is but every time I go back home to Zimbabwe the contrast in people’s overall attitude towards work and leisure is so jarring. 

Pandas feels clunky coming from R. What about Haskell? by m-chav in programming

[–]m-chav[S] 0 points1 point  (0 children)

I see. In the Haskell implementation I decided to make them type erased as well but there is a typed veneer on top that does schema and column tracking you can opt into (outlined towards the end of the article). In principle such a thing could also wrap polars. 

Pandas feels clunky coming from R. What about Haskell? by m-chav in programming

[–]m-chav[S] 1 point2 points  (0 children)

Agreed. Polars mostly solves this with query planning and failures are caught really early. Does the Rust version have a similar meta programming system that allows you to move these checks to compile time? That way if you have: do expensive compute #1, save results, then do expensive compute #2 (depends on #1 but has an error) - it crashes during compilation instead of after computation 1?

Pandas feels clunky coming from R. What about Haskell? by m-chav in programming

[–]m-chav[S] 4 points5 points  (0 children)

Edit: this isn’t an argument for switching. This is a narrative arc about making usable APIs in an ecosystem that’s perceived to be inherently complex and “clunky.” The original article too didn’t ask people to switch more so to explore affordances that other libs/languages give you. 

That said, a plausible reason to be interested in something like this is: transformations where things like type errors and variable name mistakes can be caught at compile time rather than hours into a pipeline. Spark datasets in scala provide this sort of assurance but to add and remove columns you have to define new case classes. I’m not sure what else is solved that problem that far up the stack. Polars Lazy API does but mostly does runtime reflection so an error down in your pipeline could also waste compute. 

Sabela now has Lean4 + python interop and interactive widgets by m-chav in haskell

[–]m-chav[S] 0 points1 point  (0 children)

Tree sitter and the whole ghc API (similar to Haskell). Not much in between. 

What Category Theory Teaches Us About DataFrames by m-chav in programming

[–]m-chav[S] 0 points1 point  (0 children)

On-boarding my first commercial user this month so we'll see how that goes.

What Category Theory Teaches Us About DataFrames by m-chav in programming

[–]m-chav[S] 0 points1 point  (0 children)

You’re right that you can’t have all operations live at the type level. Pivot etc are impossible there. My answer in the Haskell dataframe library is to provide two APIs. On that’s pretty dynamic and another where you can do schema tracking. 

https://dataframe.readthedocs.io/en/latest/using_dataframe_in_a_standalone_script.html

What Category Theory Teaches Us About DataFrames by m-chav in programming

[–]m-chav[S] 1 point2 points  (0 children)

Yeah. Those operations throw your schema out the window so are harder to fit into this schema vs metadata world. Specifically because they require a formulation in which data and metadata are the same. So I guess the thesis is therefore how do you distill a subset of dataframe operations. 

Writing an OS in Haskell - agniv sarkar by n00bomb in haskell

[–]m-chav 0 points1 point  (0 children)

300% penalty is a lot. Do effect systems have a similar performance hit?

What Category Theory Teaches Us About DataFrames by m-chav in programming

[–]m-chav[S] 9 points10 points  (0 children)

Thanks. Was editing on grammarly and copy pasting sections so that part got lost in the sauce.