Curated Picks

Hand-picked articles, podcasts, and videos, annotated with our insights

Showing 13-24 of 43

Scala Users Nov 13, 2024

F# versus Scala

alain, forum user

A November 2024 technical debate contrasted Scala's JVM ecosystem with F#, highlighting its hybrid OO/FP model and advanced type system as key differentiators. Contributors emphasized Scala's capacity for higher-kinded types and type classes, enabling libraries like Cats and ZIO to create generic, reusable FP abstractions beyond F#'s .NET-constrained design. Concrete outcomes included tooling comparisons favoring IntelliJ IDEA for refactoring and Metals for compiler-accurate feedback, alongside performance benchmarks showing negligible difference with F# on computational tests. The discussion underscored Scala's bifurcated FP ecosystem (Typelevel vs. ZIO) as a sign of mature community experimentation, while noting the language's strategic position benefiting from JVM innovations like GraalVM and Project Loom. Participants framed the choice as fundamentally platform-driven, with Scala offering a more expressive, if complex, type system for JVM-centric teams.

Scala
Association for Computing Machinery (ACM) Aug 15, 2024

Functional Programming in Financial Markets (Experience Report)

Atze Dijkstra, José Pedro Magalhães and Pierre Néron

Standard Chartered Bank has detailed the production use of their Haskell-derived language Mu to orchestrate pricing workflows for their Markets division, which reported $3 billion in operating income. Their Cortex ecosystem, comprising over 7 million lines of Mu code, supports everything from deal valuation APIs to end-user GUIs for thousands of users. The authors attribute the system's reliability to functional concepts like monads and datatype generics, which they credit for reducing bugs like segmentation faults absent in Mu-only code.

A core technical component is the type-driven QuickRisk API, which constructs minimal computation graphs for pricing and risk analysis using a Work API for separating workflow definition from execution. The bank also built an internal job scheduler, Shepherd, to manage these large-scale, dependent workflows. The team reports that this functional architecture allows a single API to price one trade locally or millions across cloud nodes, with dependent parts recomputing automatically.

Regarding practical outcomes, the authors state their team consistently delivers solutions faster and with fewer developers compared to internal teams using Java and Scala. They also report that hiring over 100 developers primarily focused on Haskell/Mu has not been a limiting factor, with qualified candidates consistently applying for open roles. The paper concludes that the functional approach has been a significant catalyst with no major downsides in their setting, challenging common myths about performance and interoperability in large-scale finance.

Haskell
r/lua Subreddit Jul 27, 2024

Why is Lua considered one of the most hated languages?

ServeThePatricians, Reddit user

A 2022 Stack Overflow developer survey placed Lua near the bottom of the "loved" rankings, which prompted extended discussion on r/lua. Critics pointed to familiar complaints: 1-based indexing, the ~= inequality operator, a deliberately small standard library that leaves basic tasks like string splitting to user code, and weak debugging integration in common tooling. Defenders responded that these choices reflect Lua's original design goals as a lightweight, embeddable language, where minimalism and predictability take precedence over convenience.

The discussion did not lead to proposals for changes to Lua itself, instead restating a long-standing tension between its role as an embedded scripting language and expectations shaped by more feature-complete, standalone ecosystems.

Lua
Hacker News Jul 18, 2024

Ask HN: What's Prolog like in 2024?

overclock351, HN user

A July 2024 Hacker News thread asking "What's Prolog like in 2024?" generated over 250 comments debating its modern relevance. Practitioners highlighted Scryer Prolog's strict ISO conformance and 24x memory efficiency for string processing, and Trealla Prolog's embeddability via WebAssembly. Integration with mainstream ecosystems was a key theme, evidenced by the Janus library for Python-Prolog interop and Datalog's use as a more expressive recursive query layer than SQL. Critics pointed to persistent challenges: fragmented implementations, the difficulty of controlling backtracking in large systems, and a lack of standardized tooling. Multiple comments noted Prolog's enduring commercial niche in complex product configuration (CPQ) and scheduling engines, where constraint logic programming remains a competitive advantage.

Prolog
Hacker News Feb 20, 2024

A response to "Erlang – overhyped or underestimated" (2010)

Tomte, HN user

In a February 2024 Hacker News thread revisiting a 2010 blog post, practitioners debated Erlang's adoption and technical merits. Proponents cited its use in scalable messaging systems like WhatsApp and Discord, and argued its pre-emptive scheduler and process model are superior to Node.js's cooperative async/await for error isolation and concurrency. Critics pointed to unfamiliar syntax, perceived ecosystem risks, and operational complexity compared to mainstream alternatives. The discussion highlighted Elixir's growth as a syntax layer improving adoption, while acknowledging Erlang's continued dominance in telecom and specific high-availability niches.

Erlang
r/lisp subreddit Feb 15, 2024

Why is Common Lisp not the Most Popular Programming Language?

A February 2024 Reddit thread with over 150 comments discussed Common Lisp's limited adoption. The conversation clustered around three recurring claims: that the perceived reliance on Emacs raises the activation energy for developers accustomed to VS Code; that macro-heavy codebases create maintainability and onboarding challenges; and that early fragmentation prior to standardization, combined with costly proprietary tooling, delayed the availability of free implementations. Several experienced Lisp developers pushed back on the maintainability argument, arguing that macro misuse is largely a process issue and that code review and contemporary engineering practices limit the problem in practice. The discussion remained qualitative.

Common Lisp
Hacker News Feb 14, 2024

Why is Common Lisp not the most popular programming language?

kryptiskt, HN user

A February 2024 Hacker News thread with over 300 comments discussed Common Lisp's persistent adoption issues. Participants raised a mix of technical complaints, including linked list performance, pathname abstractions, and inconsistent REPL behavior, alongside ecosystem problems such as package fragmentation and limited documentation. The original post attributed Common Lisp's stagnation to the absence of a centralized fundraising or coordinating body comparable to Python’s PSF, citing PyCon's reported $1.2M in revenue as an example of what such structures enable.

Many responses disputed that explanation, arguing that structural funding alone would not address deeper constraints. Frequently cited factors included macro-heavy DSL usage leading to hard-to-maintain code, lack of long-term corporate backing when compared to languages like Rust or Python, and a high initial learning curve that limits early adoption. The thread did not converge on a single cause, leaving governance, language design, and historical timing as competing explanations.

Common Lisp
r/dotnet Subreddit Feb 5, 2024

What are F# use cases?

Illustrator_Forsaken, Reddit user

In a 2022 r/dotnet thread discussing F# use cases, practitioners highlighted its discriminated unions and type system for domain modeling, particularly in representing tree-like structures such as ASTs. Proponents, including user dr_bbr, cited migrating from VB.NET to F# backends for enhanced null safety and compile-time SQL schema validation via type providers, reducing runtime errors. Critics argued that equivalent null-safety and validation can be achieved in C# with nullable reference types and build tasks, while noting F#'s steeper learning curve and debugging challenges in functional pipelines. Several commenters reported using F# successfully for business logic and complex data transformation layers, emphasizing improved testability and reduced cognitive load from immutable data flows. The discussion concluded without a consensus on superiority, but reflected ongoing interest in F# for domains prioritizing correctness and expressiveness over broad ecosystem integration.

F#
r/programming subreddit Jan 16, 2024

Introducing OpenD, a D language fork that is open to your contributions.

BtcVersus, Reddit user

A fork of the D programming language, OpenD, was announced by long-time contributor Adam Ruppe, alongside a public repository and an open call for external contributions. Ruppe described the motivation as dissatisfaction with D's governance process, arguing that it has permitted features to be merged with inconsistent review standards. Responses to the announcement framed OpenD less as a short-term protest fork and more as an attempt to establish different decision-making norms. The immediate result is a separate codebase that does not track upstream D, introducing an early divergence in language development and associated tooling.

D
Haskell Discourse Dec 23, 2023

8 months of OCaml after 8 years of Haskell in production

Dmitrii Kovanikov

A prominent forum thread dissecting an "OCaml after Haskell" blog post evolved into a multi-month debate on Haskell’s industrial viability. Participants, including library maintainers and Haskell Foundation members, identified ecosystem stability as the critical bottleneck, citing costly GHC upgrades and abandoned libraries. The Stability Working Group, championed by key figures like SPJ, was highlighted as a concrete institutional response, producing a formal GHC stability policy. Community sentiment split between optimizing for production use and preserving experimental language evolution, with some contributors stating they are shifting careers due to limited hiring markets outside specific niches like blockchain. Tangible outcomes included the identification of measurable goals for package maintenance health and renewed focus on "Simple Haskell" best practices documentation. The thread itself, with over 100 posts, acted as a gathering point for accumulated concerns regarding tooling fragility and onboarding complexity, underscoring an ongoing cultural reckoning within the community.

Haskell
Haskell Discourse Dec 23, 2023

8 months of OCaml after 8 years of Haskell in production

Dmitrii Kovanikov

A senior Haskell practitioner published an experience report after eight months using OCaml professionally at Bloomberg, contrasting it with eight prior years of Haskell. The author cited OCaml's "ergonomic mutability" and simpler, extension-free semantics as primary productivity benefits, reducing cognitive load compared to complex Haskell type errors involving features like MultiParamTypeClasses. Community discussion validated OCaml's practical toolchain, with PPX preprocessors providing derive-like functionality and Jane Street's sustained investment credited for ecosystem growth. The blog post was subsequently updated based on community feedback, refining library recommendations and acknowledging OCaml's own error message quirks. Concrete outcomes included the author’s public shift in primary language focus and a detailed comparison table that sparked broader debate on language design trade-offs, specifically the stability versus innovation balance. The discussion served as a visible marker of ongoing developer migration between these ML-family languages, driven by perceptions of industrial maintainability.

OCaml
r/lua Subreddit Sep 22, 2023

Lua is the best programming language (change my mind)

HG0973, Reddit user

In a multi-year Reddit discussion, developers debated whether Lua is best described as an "underrated" language, pointing to its embedded use in large-scale projects such as Vermintide 2, reported at roughly 1.2 million lines, as well as platforms like Roblox and OpenResty. Supporters emphasized Lua's minimal syntax and the ease of embedding it through its C API. Critics focused on issues that limit its appeal as a standalone language, including 1-based indexing, a small standard library, and a fragmented ecosystem.

Much of the discussion implicitly framed Lua's commercial success around its role as a high-performance scripting layer inside larger C and C++ systems. Ecosystem maturity and package management, particularly LuaRocks, were repeatedly mentioned as unresolved constraints when Lua is used outside that context.

Lua