pytype VS nimpy

Compare pytype vs nimpy and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
pytype nimpy
20 38
4,538 1,416
1.0% -
9.8 5.8
1 day ago 3 months ago
Python Nim
GNU General Public License v3.0 or later MIT License
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.

pytype

Posts with mentions or reviews of pytype. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-18.
  • Enhance Your Project Quality with These Top Python Libraries
    16 projects | dev.to | 18 Mar 2024
    Pytype checks and infers types for your Python code - without requiring type annotations. Pytype can catch type errors in your Python code before you even run it.
  • A Tale of Two Kitchens - Hypermodernizing Your Python Code Base
    31 projects | dev.to | 12 Nov 2023
    Pyre from Meta, pyright from Microsoft and PyType from Google provide additional assistance. They can 'infer' types based on code flow and existing types within the code.
  • Mypy 1.6 Released
    5 projects | news.ycombinator.com | 17 Oct 2023
    we've written a little bit about what pytype does differently here: https://google.github.io/pytype/

    our main focus is to be able to work with unannotated and partially-annotated code, and treat it on par with fully annotated code.

  • Mypy 1.5 Released
    1 project | news.ycombinator.com | 10 Aug 2023
    So, I tried out pytype the other day, and it was a not a good experience. It doesn't support PEP 420 (implicit namespace packages), which means you have to litter __init__.py files everywhere, or it will create filename collisions. See https://github.com/google/pytype/issues/198 for more information. I've since started testing out pyre.
  • Writing Python like it's Rust
    10 projects | news.ycombinator.com | 21 May 2023
    What is the smart money doing for type checking in Python? I've used mypy which seems to work well but is incredibly slow (3-4s to update linting after I change code). I've tried pylance type checking in VS Code, which seems to work well + fast but is less clear and comprehensive than mypy. I've also seen projects like pytype [1] and pyre [2] used by Google/Meta, but people say those tools don't really make sense to use unless you're an engineer for those companies.

    Am just curious if mypy is really the best option right now?

    [1] https://github.com/google/pytype

  • PyMEL's new type stubs
    1 project | dev.to | 7 Apr 2023
    At Luma, we're using mypy to check nearly our entire code-base, including our Maya-related code, thanks to these latest changes. Fully adopting mypy (or an alternative like pytype) is no small feat, but working within a fully type-annotated code base with a type checker to enforce accuracy is like coding in a higher plane of existence: fewer bugs, easier code navigation, faster dev onboarding, easier refactoring, and dramatically increased confidence about every change. I wrote about some deeper insights in these posts.
  • The Python Paradox
    7 projects | news.ycombinator.com | 26 Jan 2023
    Check out https://github.com/google/pytype
  • Forma: An efficient vector-graphics renderer
    7 projects | news.ycombinator.com | 16 Dec 2022
    i work on https://github.com/google/pytype which is largely developed internally and then pushed to github every few days. the github commits are associated with the team's personal github accounts. pytype is not an "official google product" insofar as the open source version is presented as is without official google support, but it is "production code" in the sense that it is very much used extensively within google.
  • Ruff – an fast Python Linter written in Rust
    6 projects | news.ycombinator.com | 31 Aug 2022
    pytype dev here - thanks for the kind words :) whole-program analysis on unannotated or partially-annotated code is our particular focus, but there's surprisingly little dark PLT magic involved; in particular you don't need to be an academic type theory wizard to understand how it works. our developer docs[1] have more info, but at a high level we have an interpreter that virtually executes python bytecode, tracking types where the cpython interpreter would have tracked values.

    it's worth exploring some of the other type checkers as well, since they make different tradeoffs - in particular, microsoft's pyright[2] (written in typescript!) can run incrementally within vscode, and tends to add new and experimentally proposed typing PEPs faster than we do.

    [1] https://github.com/google/pytype/blob/main/docs/developers/i...

  • A Python-compatible statically typed language erg-lang/erg
    27 projects | news.ycombinator.com | 13 Aug 2022

nimpy

Posts with mentions or reviews of nimpy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-19.
  • Mojo is now available on Mac
    13 projects | news.ycombinator.com | 19 Oct 2023
    I mean honestly, the closest language to Mojo really is Nim. In the latest Lex Fridman interview [0] when he talks about his ideas behind Mojo it pretty much sounds like he's describing Nim. Ok fair, he wants Mojo to be a full superset of Python, but honestly with nimpy [1] our Python interop is about as seamless as it can really be (without being a superset, which Mojo clearly is not yet). Even the syntax of Mojo looks a damn lot like Nim imo. Anyway, I guess he has the ability to raise enough funds to hire enough people to write his own language within ~2 years so as not have to follow random peoples whim about where to take the language. So I guess I can't blame him. But as someone who's pretty invested in the Nim community it's quite a shame to see such a hyped language receive so much attention by people who should really check out Nim. ¯\_(ツ)_/¯

    [0]: https://youtu.be/pdJQ8iVTwj8?si=LfPSNDq8UKKIsJd3

    [1]: https://github.com/yglukhov/nimpy

  • Show HN: Pip Imports in Deno
    6 projects | news.ycombinator.com | 11 Aug 2023
    You can also do this in Nim, which basically means you can write any program you could in Python with libraries in Nim. https://github.com/yglukhov/nimpy
  • Nim v2.0 Released
    49 projects | news.ycombinator.com | 1 Aug 2023
    Ones that have not been mentioned so far:

    nlvm is an unofficial LLVM backend: https://github.com/arnetheduck/nlvm

    npeg lets you write PEGs inline in almost normal PEG notation: https://github.com/zevv/npeg

    futhark provides for much more automatic C interop: https://github.com/PMunch/futhark

    nimpy allows calling Python code from Nim and vice versa: https://github.com/yglukhov/nimpy

    questionable provides a lot of syntax sugar surrounding Option/Result types: https://github.com/codex-storage/questionable

    ratel is a framework for embedded programming: https://github.com/PMunch/ratel

    cps allows arbitrary procedure rewriting to continuation passing style: https://github.com/nim-works/cps

    chronos is an alternative async/await backend: https://github.com/status-im/nim-chronos

    zero-functional fixes some inefficiencies when chaining list operations: https://github.com/zero-functional/zero-functional

    owlkettle is a declarative macro-oriented library for GTK: https://github.com/can-lehmann/owlkettle

    A longer list can be found at https://github.com/ringabout/awesome-nim.

  • Prospects of utilising Nim in scientific computation?
    3 projects | /r/nim | 3 Jun 2023
    I use Python daily for its massive momentum for scientific stuff, but I also use Nim for everything else. Nim compiles to C, and making Python native modules with Nim is easy with Nimpy.
  • Can't run compiled nim code in Python
    1 project | /r/learnpython | 28 May 2023
  • Returning to Nim from Python and Rust
    2 projects | news.ycombinator.com | 18 Feb 2023
    If are a data scientist and come from python take a look at nimpy, a great way to just import python libraries and use them! https://github.com/yglukhov/nimpy Numpy, pandas, pytorch all usable in Nim.

    Nim is the ultimate glue language, use libraries from anything: python, c, js, objc.

  • Python's “Disappointing” Superpowers
    9 projects | news.ycombinator.com | 1 Feb 2023
    I've come to really enjoy programming in Nim. Note that Nim is very different language despite sharing a similar syntax. However, I feel it keeps a lot of the "feel" of Python 2 days of being a fairly simple neat language but that lets you do things at compile time (like compile time duck typing).

    There's a good Python -> Nim bridge: https://github.com/yglukhov/nimpy

  • Dunder methods in nimpy
    2 projects | /r/nim | 3 Jan 2023
    See this nimpy issue about it: https://github.com/yglukhov/nimpy/issues/43
  • What language to move to from python to speed up algo?
    4 projects | /r/algotrading | 7 Dec 2022
    It has pretty good integration with python, either for having your main code in python and writing small hot functions as nim and importing via nimporter or using python libraries in nim via nimpy.
  • ABI compatibility in Python: How hard could it be?
    5 projects | news.ycombinator.com | 19 Nov 2022
    Related: Nimpy[0] provides an easy way to write Python extensions in Nim, which manages the ABI side very well.

    Python 2 is now gone, but until it was, Nimpy was an easy way to write Python extension modules that only needed to be compiled once, and would work with any of your installed Python 2 and Python 3. Magic.

    [0] https://github.com/yglukhov/nimpy

What are some alternatives?

When comparing pytype and nimpy you can also consider the following projects:

mypy - Optional static typing for Python

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).

pyright - Static Type Checker for Python

Box - Python dictionaries with advanced dot notation access

pyre-check - Performant type-checking for python.

nimporter - Compile Nim Extensions for Python On Import!

pyannotate - Auto-generate PEP-484 annotations

scinim - The core types and functions of the SciNim ecosystem

pyanalyze - A Python type checker

nimpylib - Some python standard library functions ported to Nim

ruff - An extremely fast Python linter and code formatter, written in Rust.

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