Amirography, to haskell

Haskell. Its tool chain and version management pose significant hurdles, admittedly.
While the language itself inspires wonder, I must confess that the tooling falls short when measured against the high standards set by contemporary languages like Go and Rust.
In all fairness, we should recognize its historical context, where Haskell competed with C. From that perspective, its advancements were indeed commendable, and it's miles ahead of the rather "horrible" tooling in C.
#Haskell

penwing, to haskell
@penwing@wandering.shop avatar

think I've set up my environment for Advent of Code 2023 starting tomorrow... I'll see you nowhere near the global leaderboard...

I'll be arsing around with again...

https://adventofcode.com/2023

https://github.com/iampenwing/AoC2023

rml, to programming
@rml@functional.cafe avatar

I think something the scheme community could learn from Haskell is to lean-in on it's prestige. I see so many people post about how they were never able to figure out how to use scheme in any practical way, and most schemers I've spoke to said it took them about a year to get really compfortable. But I think the #scheme community has traditionally advertised it as "so easy, you can learn it in an afternoon!", and so people, often times already coming from some other #lisp like #clojure, expect to be able to just pick it up, and when they fail to they think the language is lacking. But nobody comes to #Haskell with such expectations, and the Haskell community never advertised it as super easy and quick to learn. In my experience, Haskell has always been sold as "takes time to learn, but is worth it".

aeveltstra, to haskell
@aeveltstra@mastodon.social avatar

I may bitch and gripe a bit about the insane learning curve of programming languages like ... but I cut my teeth on and : I've seen worse. Of all the languages I've used, my favorite by far is , but only for processing. What's yours, and why?

rml, to programming
@rml@functional.cafe avatar

Cue quarterly community meltdown

To be fair, I think Haskell will continue to fill the niche it filled ~10 years ago, around the time it started to get mainstream hype. Small teams of skilled devs delivering robust products that would normally require much larger teams to maintain will continue to prevail. Purely functional lazy programming was never bound for world domination in an economy which is antagnostic to curiosity, creativity and truths.

On the other hand, I have the feeling that we're going to see more and more Haskellers-turned-Rustaceans come to realize that does little to alleviate the primary barrier to Haskell's wider success -- fast and predictable turnaround time for projects developing cutting-edge technologies -- and will wind up going the same route as some major Haskell projects such as and have in recent years, which is to try Scheme, only to discover that it allows them to release blazing fast functional programs on a generic foundation where major breaking changes are practically non-existent, providing incredible flexibility while significantly reducing dependencies by dint of the ad-hoc tooling that falls out of the bottom of . Not to mention the joys that come from near-instant startup times, some of the fastest compile time you've ever encountered, fully-customizable interactive development and a surgical that rivals Haskell in scheer fun. Yesterdays naysayers will become tomorrow's enthusiastic bootstrappers. Or a at least a boy can dream.

That said, in all seriousness I don't think Scheme will ever reach the heights of Haskell's moderate commercial success. But I do think that projects built on Scheme, like Unison, will get a leg up and eventually surpass it, and interest in will only grow.

https://nitter.net/graninas/status/1656519682822746113?cursor=NwAAAPAoHBlWgoCxgZ7Grf0tgsCz2c64l_0tjIC2pczQo_0thIC9xfeLvv0tgoCx4eq3tv0tJQISFQQAAA#r

haskman, to programming
@haskman@functional.cafe avatar

Learning is like a rite of passage. Everybody should do it irrespective of what they actually use

rml, to scheme
@rml@functional.cafe avatar

Why calculating is better than scheming

A critique of Abelson and Sussman
Philip Wadler

https://www.cs.kent.ac.uk/people/staff/dat/miranda/wadler87.pdf

haskman, to rust
@haskman@functional.cafe avatar

Rant: I personally find to be in a weird space where you don't have as great a type system as Haskell's, and don't even get safety from arbitrary mutation. Atleast gives me things that doesn't.

A strict Haskell, with some warts removed would go a long way towards fixing Haskell's image problems. is that Haskell, but it gets dismissed as something solely for the web. A mature native backend for PureScript would be amazing as well.

acowley, to rust

Over a few days I wrote a bunch of #C++, , , and . Something I don’t get is that while I might say that Python has the most extensive ecosystem, it seems to have the worst tooling in terms of package management and LSP features (clangd, rust-analyzer, hls, and pylsp). How does that happen? Why don’t the economics that plow programmer hours into Python libraries raise the level of its tooling?

ljrk, to programming
@ljrk@todon.eu avatar

Coding in again (need to, SDK to $service only available in JS) and I'm frequently using to look up what kind of function I'd use in (foldMap, unzipWith, ...) and then looking for JS packages that implement them.

Am I doing this right?

rml, to haskell
@rml@functional.cafe avatar

: composable code
: decomposable code

janriemer, to ai

You know that looses millions of $ through their deployed systems, right? You can expect a much higher price for using their in the future - be it your privacy or your money.

So instead of learning proompt engineering, why not do something more useful and invest your time into learning a new :

  • - a language empowering everyone to build reliable and efficient software
  • - a purely functional language that changes the way you think
SusanPotter, to haskell
@SusanPotter@mastodon.social avatar

I have just been requested to commute three days a week 135 miles away each way from my home (I have not moved) to an office I was never required to attend before the pandemic starting end of September.

If anyone needs remote product/infrastructure/platform engineering or backend developer who has 15 years cloud deployment experience and data center to cloud migration experience, email me on spotter@referentiallabs.com.

abuseofnotation, to haskell
@abuseofnotation@mathstodon.xyz avatar

I haven't written any in years, so I decided to do one little shell script, just to see if I remember.

Some random thoughts:

  • The tooling and documentation still leaves you feeling stupid (unlike, PureScript, for example)
  • I hate this packing and unpacking of strings.

Oh, and here is the script, feedback and questions are welcome:

https://github.com/abuseofnotation/abuseofnotation.github.io/blob/master/build-jekyll-tags.hs

brokenix, to haskell

Scheme - SICP - Is Scheme functional?: compsci

You don't need side effects for I/O. Purely functional languages like and 1.0 got along just fine with dialogues for I/O, although whether they could be feased is another matter. But 'side effect' is short for 'side effect of evaluation'; i.e., the computer calculates the value of this expression and oh by the way it does this I/O while it's doing that (as a side effect). The side effects of a drug are everything the drug does that's not its intended purpose; the side effects of an expression are everything the code for that expression does that's not 'calculate the value'. So you don't need side effects to do I/O. Just make the I/O part of the value and have the computer calculate the value, then do the I/O it calculated.

clementd, to haskell French
@clementd@framapiaf.org avatar

Me when people complain about lenses being too complex /
Me when people complain about trees that grow being too complex

A weimaraner baring her teeth

marcosh, to php

possibly unpopular opinion: it is easier to learn software architecture in than in , since the former requires much more discipline and attention than the latter.

kosmikus, to haskell
@kosmikus@functional.cafe avatar

Later today, 2024-05-15, at 1830 UTC, join Edsko and me for the 25th episode of the "from to Haskell" live on .

https://well-typed.com/blog/2024/05/haskell-unfolder-episode-25-from-java-to-haskell/

nomeata, to haskell
@nomeata@mastodon.online avatar

Someone once said that laziness is what kept pure, and that's the actually relevant feature. This makes we wonder: will theorem proving languages like , where logical consistency is what keeps them pure, deliver the same elegant experience, while avoiding some downsides of laziness (complex runtime, complicated performance characteristics)?

haskman, to typescript
@haskman@functional.cafe avatar

Sounds like people are asking for TypeRep support?

A lot of people in this thread seem to think that requires some sort of a runtime reflection, but it's all compile time. as well as erase types at compile time and TypeReps work well there.

https://news.ycombinator.com/item?id=36637221

bblfish, to programming

2014 paper: "Inductive Representations of graphs" by @jelabra building on M. Erwig's 2001 paper on Inductive Graphs.
https://www.sciencedirect.com/science/article/pii/S0167642314000094
They wrote a implementation https://github.com/labra/wesin
and a one https://github.com/labra/haws
There is an interesting note on the Scala page regarding banana-rdf.

> Banana-RDF contains a more general library to work with RDF from Scala. It allows different underlying implementations like Jena and Sesame. A long term project will be to unify our work with that library.

I was actually just looking to see how I could update the pure Scala implementation to https://github.com/bblfish/banana-rdf
and after following links to Quiver a Scala library for Graphs based on Erwig's original paper very well described here
https://blog.higher-order.com/blog/2016/04/02/a-comonad-of-graph-decompositions/
See https://discord.com/channels/632277896739946517/839263668478672937/1123916208509571124

mo8it, to haskell
@mo8it@fosstodon.org avatar

I did read this article about purely functional languages:

https://spectrum.ieee.org/functional-programming

You could replace with and for me all problems presented remain solved.

From my understanding, the biggest two problems mentioned in the article are:

  1. Side effects
  2. Null

Rust solves the first more efficiently with the borrow checker. The second is also solved for example with enums.

I want to understand: What advantages do purely functional languages have in comparison?

terrorjack, to haskell
@terrorjack@functional.cafe avatar

ok. sparks is indeed a nice way to get work stealing nested parallelism for free in , as long as you work with spark# directly and don't use par, pseq or anything built upon these combinators

hl, to haskell
@hl@social.lol avatar

but programming language names:
Ghost in the
Is For Heros
In The Name Of The
Schindler's
Star Wars: The Awakens
Manchester By the #C
The Truman
Bringing Up
Anyone get any other good ideas?

forgefed, to Blog
@forgefed@floss.social avatar

New ForgeFed post:

Stabilizing the Object Capability System

https://forgefed.org/blog/stabilizing-ocaps/

Where to comment: Right here on the Fediverse :)

--pere

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • kavyap
  • DreamBathrooms
  • normalnudes
  • magazineikmin
  • InstantRegret
  • GTA5RPClips
  • thenastyranch
  • Youngstown
  • rosin
  • slotface
  • osvaldo12
  • ngwrru68w68
  • ethstaker
  • JUstTest
  • everett
  • Durango
  • Leos
  • cubers
  • mdbf
  • khanakhh
  • tester
  • modclub
  • cisconetworking
  • anitta
  • tacticalgear
  • provamag3
  • lostlight
  • All magazines