MCPcopy Index your code
hub / github.com/Srinivasa314/neptune-lang

github.com/Srinivasa314/neptune-lang @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
738 symbols 2,149 edges 52 files 48 documented · 7%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Neptune Lang

Neptune is a dynamically typed scripting language

Documentation crates.io Book

Goals

  1. Embeddability: It can be embedded in any rust application. Synchronous or asynchronous rust functions can be used by a neptune script.
  2. Performance: It performs better than most interpreted(JITless) scripting languages. See Benchmarks for a comparison with lua, luajit, nodejs and ruby.
  3. Security: It is impossible to do any kind of undefined behaviour(including integer overflow)
  4. Concurrency
    • It is trivial to write asynchronous code
    • An error in a task does not always terminate the whole application and can be handled gracefully.
    • There are no function colors.
  5. Small implementation

Features

  • Iterators
  • String Interpolation
  • Modules
  • Optional semicolons
  • UTF-8 strings
  • and much more...

Getting Started

The CLI be installed by the command given below. You must have the rust compiler and a C++ compiler. The C++ compiler can be set using the CXX environment variable. Clang is recommended for best performance.

cargo install neptune-cli

At the moment the CLI has a few basic functions and a REPL. The REPL supports multiline entries and the following shortcuts. | Command | Description | | ----------- | -----------------| | Ctrl-L | Clear the screen | | Ctrl-C | Interrupt/Cancel editing | | Ctrl-D | Quit REPL | | Up arrow | Previous history entry | | Down arrow | Next history entry |

To embed it in rust you can use the library from crates.io.

Todo

  • CLI - Standard library, external modules
  • Preemptiveness?
  • Buffer type

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 378
Function 233
Class 101
Enum 23
Interface 3

Languages

C++47%
Rust31%
TypeScript19%
Ruby2%
Python1%

Modules by API surface

neptune-vm/native_builtins.cc73 symbols
neptune-book/book/highlight.js71 symbols
src/vm.rs54 symbols
src/parser.rs51 symbols
src/compiler.rs51 symbols
neptune-vm/vm.cc41 symbols
neptune-vm/object.h40 symbols
neptune-vm/hash_table.h37 symbols
src/lib.rs32 symbols
neptune-vm/native_function.cc30 symbols
neptune-vm/function.cc29 symbols
src/scanner.rs24 symbols

For agents

$ claude mcp add neptune-lang \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page