from Hacker News

Show HN: A new programming language inspired by Go, no LLVM

by hualaka on 5/29/25, 5:25 PM with 90 comments

  • by avestura on 6/1/25, 6:39 AM

    Maybe I have a too strict definition of systems programming languages, but I would never call a GC language a systems programming language. Who would use an operating system that suddenly stops the entire world because some random language's runtime wants to collect its memory garbage?

    That said, well done for making this.

  • by hualaka on 5/29/25, 5:26 PM

    I am the author of the nature programming language. You can find code examples and a playground to try it out on the official website at https://nature-lang.org I would appreciate your feedback.
  • by intalentive on 6/1/25, 7:07 AM

    Why should I care whether LLVM is used? What’s the advantage?
  • by thayne on 6/1/25, 7:27 AM

    I like a lot of things about this, and it addresses some of my complaints about go.

    But I'm confused on why strings use ascii encoding instead of utf-8. What if you need non-ascii characters?

  • by nlitened on 6/1/25, 6:31 AM

    Impressive work, but how is it better/different from Go or other programming languages? What would be one’s motivation to switch to this language?
  • by WhereIsTheTruth on 6/1/25, 6:50 AM

    Nice, the kind of project everyone should support, a language with a fully working backend for both X86/ARM

    Clean source code too, impressive project

  • by arthurcolle on 6/1/25, 6:08 AM

    the name of the programming language should be in the title, I'm sorry but come on
  • by codeptualize on 6/1/25, 9:36 PM

    Love this, definitely rooting for this to get big!

    I think the goal is great. My dream language is something "in between Go and Rust", Go but with more expressive types, Rust-light, something along those lines. This seems like it is hitting that sweet spot.

    Imo Go gets a lot right when it comes to productivity, but the type system always annoys me a bit. I understand the choice for simplicity, but my preference is different.

    Rust is quite enjoyable, especially when it comes to the type system. But, kinda the opposite of go, it's a lot, maybe too much for me, and I frequently don't know what I'm doing haha. I also don't really need Rust level performance, most things I do will run totally fine with GC.

    So Go with some extra types, same easy concurrency, compilation and portability sounds like a winner to me.

  • by hwj on 6/1/25, 10:41 AM

    I'm surprised ".n" was not already a used file extension:

    https://en.wikipedia.org/wiki/List_of_filename_extensions_(M...

  • by pjmlp on 6/1/25, 6:38 AM

    Love the effort, and brownie points for proper imports instead of directly referring to SCM urls.
  • by mrbluecoat on 6/1/25, 6:30 AM

    Great job! An impressive set of functionality for an initial release. The syntax is also quite intuitive in general but these were a bit odd to me:

    (int,bool,bool) t = (1, true, false) // v: Define a tuple. Access elements using t[0], t[1], t[2]

    string? s = null

  • by fithisux on 6/5/25, 11:34 AM

    What I would personally like to see is a low level language between C and assembly. There is Golang assembly, but it depends on a GC.
  • by xigoi on 6/1/25, 10:48 AM

    Considering that it’s supposed to be a “better Go”, there are some things it does worse than Go, such as type-before-name or using less-than and greater-than signs for type parameters.
  • by potato-peeler on 6/1/25, 3:55 PM

    > No dependency on llvm and VM, compiles directly to target platform machine code and supports cross-compilation

    Hey, can you comment on how this was achieved?

  • by lambertsimnel on 6/1/25, 7:06 AM

  • by alain_gilbert on 6/1/25, 7:44 AM

    I haven't seen anything about public/private properties/functions. So everything is public ?
  • by alexpadula on 6/1/25, 11:31 AM

    Really cool to see! Keep it up :) I wish you the best on Nature
  • by CyMonk on 6/1/25, 7:24 AM

    Why does it have a Millennium Falcon as a logo? ;)
  • by fithisux on 5/29/25, 7:00 PM

    Do you use Go Assembly for code generation?