platonic VS Nim

Compare platonic vs Nim and see what are their differences.

Nim

Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority). (by nim-lang)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
platonic Nim
1 348
6 16,133
- 0.8%
7.1 9.9
12 months ago 1 day ago
Nim Nim
- GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

platonic

Posts with mentions or reviews of platonic. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-30.
  • NIR: Nim Intermediate Representation
    9 projects | news.ycombinator.com | 30 Sep 2023
    > Ya I don't think this is a good definition of dependent type - the prototypical example of a dependent type is a k-length vector.

    Yah that's why I qualified my statement as dependent type like setup as I don't know a good definition of dependent types which I really grok and I've only briefly dabbled in it. It'd be awesome if you could point out a good resource showing a clear example / simple proof.

    Well I started working on statically typed vector concepts [1]. The compiler can't do `proc concat[N,M: static int](v1: Vector[N], v2: Vector[M}): Vector[N+M]` and it fails. It might be able to be implemented via a macro like `proc concat(v1: Vector[N], v2: Vector[M}): typeFromSumOf(N,M)`, but I haven't tried yet.

    Also just using static ints would require specific values at some point to work I think. Whereas you'd really want "induction" of some sort. Maybe a SAT solver would be required at that point? There's DrNim [2] which does tie Z3 but it's sorta dormant.

    > Um yes this is literally what I was asking with respect to top ⊤.

    Ah, I didn't know what you meant by top T.

    > ya the negation is interesting - I wonder how it's implemented.

    Nim's VM runs from Nim AST, so probably running it as a VM expression.

    1: https://github.com/elcritch/platonic

Nim

Posts with mentions or reviews of Nim. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-05-08.

What are some alternatives?

When comparing platonic and Nim you can also consider the following projects:

cps - Continuation-Passing Style for Nim 🔗

zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

langserver - The Nim language server implementation (based on nimsuggest)

go - The Go programming language

nimlsp - Language Server Protocol implementation for Nim

Odin - Odin Programming Language

coc-ccls - CCLS (C/C++) extension for coc.nvim

rust - Empowering everyone to build reliable and efficient software.

crystal - The Crystal Programming Language

v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

haxe - Haxe - The Cross-Platform Toolkit

nimskull - An in development statically typed systems programming language; with sustainability at its core. We, the community of users, maintain it.