Functional Programming in hica

New coding language hica wins curious fans, mobile complaints, and a name debate

TLDR: hica is pitching a gentler way to code, built around small reusable functions and fewer surprise changes. Commenters were intrigued by its familiar look and beginner-friendly vibe, but they also zeroed in on practical issues like mobile usability, performance, error messages, and even how to say the name.

A new programming language called hica just dropped a friendly guide to functional programming — basically, a way of writing code by chaining little building blocks together instead of constantly changing stuff behind the scenes. The pitch is clear: keep things simple, keep values fixed unless you really need to change them, and make code easier to read, test, and combine. Even the examples are written to feel beginner-safe, which got some readers nodding along immediately. One early reaction basically crowned it the approachable newcomer of the week, calling it a language for beginners and veterans alike.

But let’s be honest: the comments are the real show. One of the loudest vibes was, “Wait… this actually looks easy?” Another reader said it feels like C#, which in normal-human terms means it looks familiar enough not to trigger instant panic. That’s huge in programming circles, where people can smell weird syntax from three screens away. Others got more curious than combative, asking the practical questions that always decide whether a shiny new tool survives: How fast is it? Are the error messages any good? In other words: cute tutorial, but can it survive real life?

Then came the delightfully chaotic side plot: someone popped in to say the site looks zoomed in on mobile Safari, turning the launch into a mini usability drama. Another commenter wanted to know the most important thing of all: how do you even pronounce “hica”? So yes, hica arrived promising calm, pure, beginner-friendly coding — and the crowd responded with cautious hype, mild design shade, and a pronunciation mystery.

Key Points

  • The article presents hica as a functional, expression-based programming language where constructs like `if`, `match`, and blocks evaluate to values.
  • hica uses immutable bindings by default with `let`, while mutable state is available only through locally scoped `var`.
  • Functions in hica are described as pure by default, and the language’s type system tracks effects such as I/O through a system inherited from Koka.
  • The article explains first-class and higher-order functions, showing that functions can be stored, passed, and returned like other values.
  • Closures and the list-processing functions `map`, `filter`, and `fold` are used to demonstrate composition and practical functional programming patterns in hica.

Hottest takes

“It feels like C#, so it seems easy to learn. Looks fun.” — jdw64
“your website is ‘zoomed in’ on mobile safari” — blanched
“How do you pronounce the name?” — nyankosensei
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.