Skip to main content

Detect the programming language of a source code

Project description

View on Github Pypi Version License

Guesslang detects the programming language of a given source code. It supports more than 50 programming languages and detects the correct programming language with more than 90% accuracy.

Guesslang is an open source deep learning software that have been trained with over a million source code files.

You can use Guesslang as a command line interface tool or as a Python module:

from guesslang import Guess

guess = Guess()

# Guess the language from code
language = guess.language_name("""
    % Quick sort

    -module (recursion).
    -export ([qsort/1]).

    qsort([]) -> [];
    qsort([Pivot|T]) ->
           qsort([X || X <- T, X < Pivot])
           ++ [Pivot] ++
           qsort([X || X <- T, X >= Pivot]).
    """)

print(language)  # --> Erlang

Guesslang supports 54 of the world’s most popular programming languages:

Assembly

Batchfile

C

C#

C++

Clojure

CMake

COBOL

CoffeeScript

CSS

CSV

Dart

DM

Dockerfile

Elixir

Erlang

Fortran

Go

Groovy

Haskell

HTML

INI

Java

JavaScript

JSON

Julia

Kotlin

Lisp

Lua

Makefile

Markdown

Matlab

Objective-C

OCaml

Pascal

Perl

PHP

PowerShell

Prolog

Python

R

Ruby

Rust

Scala

Shell

SQL

Swift

TeX

TOML

TypeScript

Verilog

Visual Basic

XML

YAML

Full documentation at https://guesslang.readthedocs.io/en/latest/

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

guesslang-2.2.1.tar.gz (2.6 MB view hashes)

Uploaded source

Built Distribution

guesslang-2.2.1-py3-none-any.whl (2.5 MB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page