Neknaj Project
表示

Neknaj Project

自由度・使い勝手・マルチプラットフォーム

最大の目標 自分が欲しいものを作る

Overview

Bem130 が中心に開発しているソフト群

Neknaj は、Bem130 が中心となって継続的に開発しているソフトの project 群です。単発の作品を並べるのではなく、 互いに理念や技術基盤を共有しながら育っていくポータルとして構成しています。

目標・理念

ソフトが一つを強制するのではなく、使う側が自由に設定し、拡張し、変更できることを重視する

Neknaj は単発のアプリ群ではなく、自由度が高く、マルチプラットフォームで、言語や表現そのものも自分で改善していける エコシステムを目指しています。個々のソフトだけでなく、その土台になる言語やツールチェーンも含めて育てていく前提です。

01

自由度の高いソフトを作る

ソフトがある一つの使い方を強制するのではなく、ユーザーが自由に設定、拡張、変更できる方向を目指します。 たとえば、自分が好きな問題ファイルを作成してプレイできるタイピングソフトのような設計です。

02

究極のマルチプラットフォームを目指す

IO や依存関係を適切に抽象化し、どのような環境でもフル機能、あるいはエミュレーションによる互換機能を提供することを 重視します。web app や web playground を前提にしつつ、desktop、CLI、TUI などにも同じ核から接続できる構成を目指します。

03

安全で使いやすい言語を開発する

プログラミング言語、DSL、動画を記述する言語、論理回路を記述する言語、軽量マークアップ言語など、 様々な系統の言語の改良を続けています。現時点の最新は NEPLg2 です。

04

フリーライセンスで公開する

ほとんどの project は MIT License で GitHub 上に公開しています。再利用しやすく、参照しやすい形で公開し、 ソフトや設計の流れも追える状態を基本姿勢とします。

05

統一された理念を持つ自作エコシステムを構築する

自由度が高くマルチプラットフォームという統一された理念を持つソフト群を、自作言語で実装したエコシステムとして 育てていくことを最終的な目標に据えています。最新の project では、core + alloc を核にしながら 多段階の抽象層を挟み、web、CLI、desktop など様々なインターフェイスを繋げる構成を採っています。

Top Project

今の Neknaj をよく表している project 群

ここでは、Neknaj Project の理念を特によく表している project と、その中核 repo への導線を先に並べています。 トップでは全体の方向性を掴みやすくし、詳細は各ポータル、個別ページ、外部ドキュメントへ分離します。

Timeline / Lineage

系統分類と時間軸で見る repository の流れ

横軸は系統分類、縦軸は時間軸です。通常表示は小さめに絞り、必要なときだけ overlay で大きく確認できます。

TIMELINE を読み込んでいます。