Skip to content

Intelligence-Factory-LLC/ProtoScript.Core

Repository files navigation

ProtoScript.Core

A full programming language for prototypes, rules, and executable ontologies

Buffaly is a neurosymbolic platform for building large, explainable knowledge graphs and running language-aware inference over them. It is powered by Ontology (a prototype graph runtime) and ProtoScript (an executable language for defining prototypes, rules, and functions).

This repository contains ProtoScript (parser/compiler/interpreter), the workbench API + editor, graph induction code, and ProtoScript tests.

Scope

This repository is part of the open-source split of our platform. It does not include several commercial components (partner-only datasets, agentic tooling, and medical extensions).

✨ Key capabilities (ProtoScript)

Feature Why it matters
🧾 Executable ontology definitions Define prototypes, fields, and functions in one concise file format.
⚙️ Compiler + interpreter Parse, compile, and evaluate ProtoScript in-process.
🧰 CLI tooling Validate parse/compile/runtime behavior from automation.
🧪 Unit + integration tests ProtoScript tests live with ProtoScript (ProtoScript.Tests*).
🧑‍💻 Workbench Standalone editor web app + API endpoints for compile/interpret/debug/symbol lookup.

What This Repo Owns

  1. Language/runtime: ProtoScript, ProtoScript.Parsers, ProtoScript.Interpretter
  2. Tooling: ProtoScript.CLI, ProtoScript.CLI.Validation
  3. Workbench: ProtoScript.Workbench.Api, ProtoScript.Workbench.Web
  4. Tests: ProtoScript.Tests, ProtoScript.Tests.Integration
  5. Induction: Ontology.GraphInduction (present in repo; not currently included in ProtoScript.sln)

Solution

  • ProtoScript.sln

Current solution membership:

  • ProtoScript
  • ProtoScript.Parsers
  • ProtoScript.Interpretter
  • ProtoScript.CLI
  • ProtoScript.CLI.Validation
  • ProtoScript.Workbench.Api
  • ProtoScript.Workbench.Web
  • ProtoScript.Tests
  • ProtoScript.Tests.Integration

📚 ProtoScript reference docs (jump links)

The reference manual is split into focused sections under docs/ProtoScript/.

🚀 Build

The split repos are designed to sit as siblings on disk so Scripts\update_dlls.bat can copy DLLs between ..\ontology-core, ..\protoscript-core, and ..\buffaly-nlu. If you clone into different folder names, update the paths inside Scripts\update_dlls.bat.

From repo root:

Scripts\update_dlls.bat
dotnet build ProtoScript.sln

🧪 Test

From repo root:

dotnet test ProtoScript.Tests\ProtoScript.Tests.csproj
dotnet test ProtoScript.Tests.Integration\ProtoScript.Tests.Integration.csproj --filter "TestCategory=Integration"

Integration tests load sample project files from the Buffaly portal project directories in Buffaly.NLU.

📦 Dependency model

  • Shared binaries are resolved from local lib\ and Deploy\.
  • Scripts\update_dlls.bat refreshes DLLs from sibling split repos.

📝 Release notes

Related repositories

🛡 License

ProtoScript.Core is released under the GNU General Public License v3.0. See LICENSE.

🏥 Need help?

We deploy explainable, neurosymbolic systems in regulated domains (healthcare and beyond). If you'd like guidance or custom development, email support@intelligencefactory.ai or visit https://intelligencefactory.ai.

© 2026 Intelligence Factory, LLC

About

ProtoScript language (parser/compiler/interpreter), workbench, and tests for executable prototype ontologies. Created by Matt Furnari

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors