ホームページ >バックエンド開発 >Python チュートリアル >MSNA 大胆な開発者のための実験的プログラミング言語

MSNA 大胆な開発者のための実験的プログラミング言語

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-24 19:54:13137ブラウズ

始まり

数年前、2 つのドラフト言語を検討した後、私は個人的なプロジェクトの頂点に達しました。 MSN2 は、私が疑似プログラミング言語だと考えていた (そして今もそうです)。その主な理由は、その型破りで非最適化された解釈方法が言語の整合性の問題を引き起こす可能性があるためです。

しかし、なぜ私は何年にもわたってこのプロジェクトに戻り続けるのかと自問します。開発者が恥をかくのを恐れて、なぜ他のドラフトと一緒に捨てなかったのでしょう?私がこのビジョンを維持したのは、一人のコントリビュータがいるプログラミング言語に対する期待をはるかに超えていたためです。たとえ私が抱いているビジョンにはまだはるかに届いていません

なぜ別の言語なのでしょうか?

開発の初期段階では、単なる学習演習であったため、一般にリリースする本当の意図はありません。したがって、新しい言語を導入する本当の理由はありません。いずれにせよ、関数ツールとして、また私の Python 研究の主なソースとして、Python 上にプログラミング言語を構築するメリットにより、Python 自体の完全な機能だけでなく、次の新機能も提供されます。

  • マルチプログラミング
  • 構文の追加
  • 自動化 (Win 10 限定)
  • 多言語 (2.0.403 以降、Python、JavaScript、Java、C)
  • MSN2 -> JavaScript/React トランスパイル
  • API エンドポイントの作成と対話
  • シンプルで軽量なコンテナ

新機能の実装が簡単なため、コミュニティのフィードバックや貢献を通じて継続的に進歩する、よりコミュニティ指向の言語の基盤として機能する可能性があります。これらの現在および将来の貢献により、私たちは次の機会を創出します。

  • プログラミング戦略を革新する
  • 言語間の相互運用性を促進する
  • 柔軟でカスタマイズ可能な構文をサポート
  • 自然言語処理 (NLP) 用の事前構築ユーティリティを提供します
  • カスタム ライブラリとプラグインの作成を容易にする
  • より幅広い開発環境に適応

さらにどれくらい...?


能力

この言語が非常に有能であると言うのは簡単ですが、特定の状況では、より少ないコードでより有能であると私は主張します。また、アップデートがリリースされるにつれて、開発者として使用するのがますます楽しくなります。残念ながら、この言語を使用するのは簡単なことではありません。 VSCode 用の msn2 構文強調表示拡張機能、基本ドキュメント、および多くのチュートリアルとコード サンプルをリリースしました。ただし、キーワードやトークンの自動補完がなければ、コードを特定の方法で記述する際の影響を理解することは困難になります。これらの問題は、MSN2 リポジトリの [問題] タブで解決されています。

完全な実行可能な例

(これらの例にはフレーム外の余分なコードはありません)

  1. 簡単な操作を簡素化します
    MSNAn Experimental Programming Language for the Bold Developer

  2. API エンドポイントの開始とクエリ
    MSNAn Experimental Programming Language for the Bold Developer

  3. パーソナライズされたマクロの作成
    MSNAn Experimental Programming Language for the Bold Developer

  4. インライン JavaScript の実行 (Java および C でも可能)

MSNAn Experimental Programming Language for the Bold Developer

  1. これらの例は MSN2 の表面をなぞったものではありません。MSN2 リポジトリには、はるかに大規模なプロジェクトやデモンストレーションが多数あります。

より大規模なプロジェクトの例

  • C 構文の実装
  • Excel の自動化
  • フルスタック アプリケーション - バックエンドとしての HTML MSN2
  • 自動化 - chess.com でランダムなチェスのオープニングをプレイします
  • シンプルな Streamlit コンテナをスピンアップする
  • 私の TikTok (15 プロジェクト) - MSN2 を leetcode.com に挿入
  • すべての大規模なテスト プロジェクト

欠点

上記は素晴らしいですね! 私は、自分が作成したものを基にしてステップを踏むことに全力を注いでいます。しかし、これほど大規模で、過度に複雑で、メンテナンスが必要なコードベースに問題がなければ良いのですが、XD は存在します。

誠実さ

MSN2 2.0.403 の時点では、実行時に誤った結果を生成する可能性がある、修正可能な整合性の問題がいくつかあります。幸いなことに、整合性の問題は一時的なものですが、迅速に対処することが重要です。

スピード

Python をバックエンドとして使用すると、速度が致命的な欠点になります。それが 速度です。 MSN2 では速度が常に問題になります。残念ながら、基本言語を Python の速度に近い速度に一致させる試みしかできません。

それでは何ができるでしょうか?

  • 私たちは多言語アプローチを提供できます。 - 私たちはより遅いオーバーヘッドプロセスを管理しますが、このプロセスはより速い言語でのプログラムの起動を容易にします。 MSN2 GitHub - 多言語実装を参照
  • 私たちは それだけの価値のあるものを作ることができます - Python がより大規模なバックエンドを維持することで、MSN2 には、広範かつ柔軟なバックエンドを備えた開発者側から機能的に何が可能かを探るユニークな機会が与えられます。言語と環境にわたる一連の組み込み統合。これにより、開発者は広範なデータ パイプライン、自動化ワークフロー、大規模システムをより効果的に調整できるようになり、Python の無限の本番対応機能に依存するプロジェクトの管理と拡張が容易になる可能性があります。
  • 私たちは最適化できます - 解釈中に逆最適化のポイントがたくさんあります。これは大幅な速度向上の最初の原因となります。
  • 我々はそれを受け入れることができます - ベースMSN2は、データサイエンス、リアルタイム分析、高頻度取引、その他多くの分野。 MSN2 は主にカスタマイズ可能なプログラム オーケストレーションに使用され、高度に汎用化された機能を迅速かつシームレスに使用して、開発者がさまざまなプログラミング言語やツールを接続する強力なワークフローを作成できるようにします。この柔軟性により、環境を切り替えたり、大規模な Python を記述したりすることなく、複雑な複数言語プロジェクトを管理し、さまざまなタスクを自動化するのに理想的な選択肢となります。
  • まとめ

このプロジェクトは野心的な旅であり、学習演習として始まったものは、すぐに言語設計と新しい創造的な概念実証を探求するための遊び場に成長しました。

MSN2

は、私のプログラミング能力に継続的に挑戦する学習体験として役立ちました。それは受け入れられるものには程遠く、完璧とは程遠いですが、それがこのゲームをエキサイティングなものにしている理由の一部です。成長し改善する機会に満ちています。 言語の大部分は完全に本番環境に対応しているわけではなく、テストの範囲は 100% に達していませんが、

MSN2

は、型破りな考え方の可能性と、完璧を求めるプレッシャーなしに自由に実験できる可能性を表しています。それがプロジェクトで役立つツールになるか、個人的な取り組みに留まるかは私とコミュニティ次第ですが、その将来は継続的な開発、フィードバック、改良にかかっています。今のところ、私はそれを踏み台として見ています。荒いエッジと多くの亀裂はありますが、それでも立つのに十分なほどしっかりしています。

役立つリンク GitHub 上の MSN2 MSN2[2.0.401] ドキュメント
私のウェブサイト/ポートフォリオ

この投稿のバナーはフォーマットされていませんが、JavaScript、Java、C のインラインミックスを組み込んだ実行可能な MSN2 コードであり、すべて同じ行でスピンアップされた API エンドポイントと対話します。

以上がMSNA 大胆な開発者のための実験的プログラミング言語の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。