並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 65件

新着順 人気順

programmingLanguageの検索結果1 - 40 件 / 65件

  • Python滅ぼす協会に入会したい

    なぜ令和にもなって動的型付け言語を使うのか シフトレフトという概念が生まれたのは二十年以上も前のはずだ。 それにもかかわらず動かしてみるまで答え合わせもできない言語で開発をするという発想自体がどうかしている。 同じ動的型付けといってもJavaScriptはブラウザという事情があるし、型の表現力に優れたTypeScriptがあるからまだよい。 しかし、Pythonはどうだ。他にいくらでも選択肢があるなかで、サーバーサイドにわざわざ選定する言語ではなかろう。 貧弱な型ヒント、しかも書いたところで大した効用もない。 使っている外部ライブラリにひとつでも型ヒントがクソなものがあれば即座に破綻する。 型というガードレールもシートベルトもなしで糞を撒き散らしながらする開発にはうんざりだ。 シンタックスもキモい 動的型付けもさることながら、シンタックスもキモい。とにかく思考を妨げる語順になっている。 m

      Python滅ぼす協会に入会したい
    • 継承はなんでダメ? - まめめも

      「オブジェクト指向の継承を使うな」という主張が広まっているようです。なんでダメになったんでしょうか。 インターネットで見かけた「継承はダメ」という主張をいくつか眺めて、友人と議論しつつ、考えてみました。 「コードが読みにくくなる」 継承があると、メソッド呼び出しが実際にどのメソッド定義を呼び出すのか字面でわからない。 デバッガを使って、親クラスのメソッドに飛んだり、子クラスに飛んだりするのを追いかけないと行けない。 つらい。という主張。 めっちゃわかる。わかるんですが、これは「高度に共通化されたコードは読みにくい」という一般的な側面がかなり大きいような。 たとえば継承の代わりに高階関数を使うと、関数呼び出しがどのクロージャに飛ぶか字面でわからなくなる。 ひどいとコールバック地獄になって何が何やらになります。 継承がことさらにまずい理由を想像すると、すべてのメソッド呼び出しがポリモーフィック

        継承はなんでダメ? - まめめも
      • 日本企業でシステムトラブルが相次ぐ根本原因 SIerとユーザー企業の間にある「埋められない人材格差」 →ユーザー側に必要な能力がないとプロジェクトの成功確率は落ちる

        中野 仁 (AnityA) @Jin_AnityA ユーザー側とシステムを本業にしているベンダー側で組織の能力差がでるし、結果的に情報の非対称性が拡大する 外部に発注するにもユーザー側に必要な能力というのはあるし、それがないとプロジェクトの成功確率は落ちる 日本企業でシステムトラブルが相次ぐ根本原因 SIerとユーザー企業の間にある「埋められない人材格差」 president.jp/articles/-/819… 2024-06-01 07:41:21 リンク PRESIDENT Online(プレジデントオンライン) 「プッチンプリン」の出荷停止に、ゆうちょ銀行の入金遅延…日本企業でシステムトラブルが相次ぐ根本原因 SIerとユーザー企業の間にある「埋められない人材格差」 江崎グリコのシステム障害によりプッチンプリンなど一部商品の出荷が停止している。4月にはゆうちょ銀行で入金遅延が起きた

          日本企業でシステムトラブルが相次ぐ根本原因 SIerとユーザー企業の間にある「埋められない人材格差」 →ユーザー側に必要な能力がないとプロジェクトの成功確率は落ちる
        • JavaScript Visualized - Promise Execution

          Promises in JavaScript can seem a bit daunting at first, but understanding what's happening under the hood can make them much more approachable. In this blog post, we'll dive deep into some of the inner workings of promises and explore how they enable non-blocking asynchronous tasks in JavaScript. I'm still working on making this blog better on mobile devices, mobile browsers don't always render t

            JavaScript Visualized - Promise Execution
          • ビジネスロジックを「型」で表現するOOPのための関数型DDD / Functional And Type-Safe DDD for OOP

            Object-Oriented Conference 2024で発表した資料です。 https://fortee.jp/oocon-2024/proposal/b31c9818-3cb8-4350-adfe-cbc839cdf829 ビジネスの専門知識(ドメイン)を中心に据えたドメイン駆動設計に…

              ビジネスロジックを「型」で表現するOOPのための関数型DDD / Functional And Type-Safe DDD for OOP
            • 強い思想: Go を Web 開発に採用する上で

              Go は Web 開発に向いているか? 最も向いている領域は「CLI ツール」「ミドルウェア」「マイクロサービス」だと思っている。なぜならそれらはコードベースを比較的小さく抑えることを前提としているからだ。 Go は大きなコードベースを抱えやすい設計の言語になっていない。 ミドルウェアとマイクロサービスに関しては小さく作ることが正義。 CLI ツールに関しては単一責務なツールであれば小さくなるが,複数を束ねるツールであっても Web サービス開発に比べれば考えることは少なくて済む。 Web 業界における「一般的な Web 開発」,すなわちモノリスを基本とした中規模以上の開発にははっきりと 向いていない と言うべきだろう。 フラットパッケージは正義か? 私が SNS で何度か言及した以下の記事がある。 フラットパッケージ戦略は,確かに Go の文化圏においては一定の支持を集めている。Go の

                強い思想: Go を Web 開発に採用する上で
              • Amber The Programming Language

                Write your scripts in a modern type-safe and runtime-safe programming language that handles many bugs and mistakes during compilation process.

                  Amber The Programming Language
                • decimal型(十進小数)に夢を見ている輩が多すぎる - Qiita

                  みたいなのが挙げられます。これが話題になった時にSNSで見かける言説が「十進小数 (decimal) 型ならこういう問題はない」です。 ですが、decimal型は十進小数を正確に表現できるという話でしかなく、全ての実数を正確に表現できるわけではありません。例えば、 1.0 / 3.0 * 3.0 の計算を考えてみましょう。数学的には、これはちょうど 1.0 になるはずです。 C#の場合 C#には標準の decimal 型があります。これで 1.0 / 3.0 * 3.0 を計算してみましょう。

                    decimal型(十進小数)に夢を見ている輩が多すぎる - Qiita
                  • まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの最大の敵」と「セカンドシステムの危険性」

                    プログラミング言語「Ruby」の国内最大のビジネスカンファレンス「RubyWorld Conference」。Rubyの先進的な利用事例や最新の技術動向、開発者教育の状況などの情報を発信することで、「Rubyのエコシステム(生態系)」を知ることができる場として開催します。ここで登壇したのは、Rubyアソシエーション 理事長のまつもとゆきひろ氏。プログラミング言語の過去、歴史から学ぶ教訓について発表しました。全4回。3回目は、「Second System Syndrome」について。前回はこちら。 退屈は最大の敵 まつもとゆきひろ氏:次はPerlですね。ここまでですでに4回ぐらいPerlの話題が出てきています。なぜかというと、私はPerlが大好きなんですね。実は、Perlが大好きなんですが、Perlのプログラミングは大好きじゃないんですね。あと、Perlのソースコードも大好きじゃないんですね

                      まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの最大の敵」と「セカンドシステムの危険性」
                    • 高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性

                      高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性 Modular社はPythonの高速なスーパーセットと同社が位置づける開発中の新言語「Mojo」の、Appleシリコンにネイティブ対応したMac版をリリースしました。 Today is the day! Mojo for Mac is live! Download it right now! Read our launch blogpost on how to get startedhttps://t.co/XSMkqUmHKt — Modular (@Modular_AI) October 19, 2023 Mojoは9月に初めてローカル環境でコンパイルなどを実行可能なLinux対応のツール群を公開しています。今回のAppleシリコンにネイティブ対応した

                        高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性
                      • プログラミング言語 HTML 入門

                        はじめに 以前 uhyo さんにより「HTML はプログラミング言語である」と示されたことは記憶に新しいところですが、昨年末の HTML, The Programming Language の登場により、その主張はより強固なものとなりました。現代ではもはや、HTML は立派なプログラミング言語であるということは疑いようがありません。 この記事では、プログラミング言語 HTML, The Programming Language について、その概要と基本的な文法について説明します。そして最後に、HTML プログラミングの応用例として FizzBuzz やフィボナッチ数列の実装例を見ていきます。 HTML, The Programming Language HTML, The Programming Language (以下 HTML と略します) は、HTMX を開発していることで有名な B

                          プログラミング言語 HTML 入門
                        • Javaを中心に偏見ベースでプログラミング言語の関係をまとめた - きしだのHatena

                          オブジェクト指向言語の話をするときに便利なように、Javaを中心にプログラミング言語をまとめてみました。 Javaに影響与えるか、Javaから影響を受けるか、という感じですね。 Simula オブジェクト指向はここから始まったと言われています。 クラス、オブジェクト、継承、仮想関数(多態)といった、オブジェクト指向の基本要素が備わっていました。 ただし、「オブジェクト指向」という言葉は生まれていません。 Smalltalk Simulaから発想を得て「オブジェクト指向」という言葉を生んだのはアラン・ケイでした。 しかし、モデルとしてはSimulaとは異なりメッセージングを主体としたものでした。また、アラン・ケイの「オブジェクト指向」はプログラミングのパラダイムだけではなく、人がコンピュータをどのように扱うかというメタファであり、ダイナブックというハードウェアやそのユーザーインタフェースを含

                            Javaを中心に偏見ベースでプログラミング言語の関係をまとめた - きしだのHatena
                          • PHPの時代は終わった? プログラミング言語のランキングで、2001年以来の最低シェアを記録【やじうまWatch】

                              PHPの時代は終わった? プログラミング言語のランキングで、2001年以来の最低シェアを記録【やじうまWatch】
                            • Pythonが教育用途において十分だという話

                              Pythonが教育用途において十分だという話 今話題のPythonを教えている現役の講師です。Pythonを教える際に重視すべきだと考えている機能等について書いておきます。 dataclass / Pydantic 自分は型ヒントよりもdataclassやPydanticを使った型付けを重視しています。いわゆるクラスベースな言語の書き方が大事だと考えています。 dataclass Pythonは動的型付け言語であり、interface相当の機能すらclassの構文で書く変わった言語です。近年Pythonの型ヒントは少しづつ充実してきていますが発展途上であることは否めないですし、何より実行時にその型であることは保証されないので、dataclass等を使った開発スタイルが依然強力だと考えています。 Python+TypeScriptというようなスタックを使う際には両言語の差に混乱するでしょう。

                                Pythonが教育用途において十分だという話
                              • Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表

                                Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表 式言語とは一般に、プログラミング言語の一部やネットワークなどの構成ファイル、テンプレートファイルなどの中で、簡易な式やロジック、ポリシーなどを記述する際に使われる言語のことです。 こうした用途では、さまざまなプラットフォームに対応する移植性、起動時やプログラムの実行中に評価されることがあることから高速に評価が完了すること、安全に評価が実行できること、用途に応じて拡張しやすいこと、などが求められます。 CELは超高速に評価、ポータブル、サブセットサポート CELは正にこうした要件に対応した式言語となっており、Googleは次のような特徴があるとしています。 ナノ秒からマイクロ秒程度の高速な評価に最適化されている C++、Java、Goでサポートされるスタックによるポータブ

                                  Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表
                                • WebAssembly所感

                                  WebAssemblyをちょっといじってみて思ったところをまとめてみます。 設計思想 WebAssembly/designに設計文書がまとまっています。特にHighLevelGoals.mdから読み取れるポイントは以下の4点です。 サンドボックス化された環境であること。 移植性があること。つまり、特定の実CPUアーキテクチャ等に依存しないこと。 少なくともC/C++の(十分に高速な)コンパイルターゲットとして機能すること。 安定した仕様を持つこと。 サンドボックスという観点からは、先行技術として以下のようなものが特筆に値します。 Webサンドボックス JavaScript および asm.js Javaアプレット Flash (ActionScript) NaCl, PNaCl Web以外のサンドボックス OSのユーザーランド、特にLinux userland これらのサンドボックスとの比

                                    WebAssembly所感
                                  • MoonBit が WebAssembly 時代の理想(の原型)だった

                                    最近 moonbit という言語を知ったのですが、これが調べれば調べるほど好きになる言語だったので、紹介させてください。 文法的には GC 付きの Rust で、 WebAssembly にコンパイルされます。とくに CDN Edge Worker 上での実行を想定しているようです。もう好き。 注意: まだ若い言語なので、これから言語仕様がガンガン変わっていくと思われます。あくまで現時点での情報です。 tl;dr Pros だいたい GC あり Rust と捉えていい 文法面のキャッチアップが容易 ライフタイムの難しさを考えなくていい すでに vscode 拡張やパッケージマネージャ等のエコシステムが整っている Cons まだ安定していない / しばらくはソースコードが公開されない 現時点では学習リソースやパッケージ数が足りず、書き手の腕力が求められる はじめに: JS/TS/Rust へ

                                      MoonBit が WebAssembly 時代の理想(の原型)だった
                                    • Node.jsでTypeScriptのコードを実行できるようになるかも - hiroppy's site

                                      module: add --experimental-strip-types by marco-ippolito · Pull Request #53725 · nodejs/node It is possible to execute TypeScript files by setting the experimental flag --experimental-strip-typ... 💁‍♀️ まだマージされてない点に注意してください --experimental-strip-typesというフラグを実行時に付けることにより、Node.jsでTypeScriptのコードを実行できるようになるPRが出てきました。 背景 TC39でも型注釈の話題(議事録を読むとブラウザとの兼ね合いもあり道のりは長そう)が存在するほどJSのコードにおいて、型は当たり前となっています。 Node.jsと同

                                        Node.jsでTypeScriptのコードを実行できるようになるかも - hiroppy's site
                                      • たかがRuby頑張れないやつがソフトウェア開発頑張れるハズないだろう - yuiseki

                                        私が理解している限り、「良いソフトウェア」を開発するためには「小さいチーム」と「優秀な開発者」が最重要で、それらの欠如をIDEやら静的型言語やらで埋めることはできるというのは幻想。動的型言語は最初からそんな幻想を提供しない

                                          たかがRuby頑張れないやつがソフトウェア開発頑張れるハズないだろう - yuiseki
                                        • HaskellとRustを足して2で割ったような関数型言語Fixを作っている話 - Qiita

                                          はじめに ここ1年ぐらいかけて、Fixという名前のプログラミング言語を作っています。 コアとなる機能の実装がある程度落ち着き、実際にFixを使ってプログラムを書けるようになってきたので、そろそろ言語の紹介をしてみようと思います。 本記事はFixのチュートリアルではなく、どういう思想で設計されていて、どういう特徴を持つ言語なのか、という点を紹介するものです。 意見・提案・助言などをいただけるとうれしいです。 リポジトリはこちらです。 ※ コメントやコミットメッセージは一応拙い英語で書いていますが、日本語でissueを立てたりdiscordで意見・質問してもらっても大丈夫です。 ※ 急いで作った部分もあるため、コンパイラのコードは結構汚いです。ご容赦ください。 現状、Fixをローカルで実行するためにはLLVMのインストールが必要で時間がかかりますが、Fix playgroundを使えばブラウザ

                                            HaskellとRustを足して2で割ったような関数型言語Fixを作っている話 - Qiita
                                          • 効率的なGo

                                            本書は、Goアプリケーションの効率やスケーリングに関する疑問に対して、実用的な答えを与えてくれる書籍です。 レイテンシー、CPU、メモリ資源についての知識、またOSやGoがそれらを抽象化している方法について、またソフトウェアの効率に関わるデータ駆動な意思決定を行う事の意味や、計算量解析の手法、最適化状況の例など、実用的なソフトウェアを開発する中での「効率」に関する知識を紹介します。 Goやその他のモダンな言語で書かれたプログラムを設計、作成、変更するソフトウェア開発者、また誰かが書いたソフトウェアを主に運用するDevOpsエンジニア、SRE、シスアド、プラットフォームチームなどの読者が、いつ、どのように効率最適化を適用するかという問いに答えるための知識を身に付けることができるでしょう。 関連ファイル 原著者による本書のサンプルリポジトリ 正誤表 ここで紹介する正誤表には、書籍発行後に気づい

                                              効率的なGo
                                            • これを知らなければ、C++プログラマを名乗れない。ITエンジニアも驚いた「C言語」の配列の仕組み→「初めて知った」「配列へのアクセスの書き方が糖衣構文」

                                              二項しいぷ @BinomialSheep C++の「す、すげーー!!そんなことすなーっ!!!!!!」シリーズ 『プログラミング言語C++ 第4版/ストラウストラップ』 pic.twitter.com/KjiDaXe0tj x.com/winter_kyopro/… 2024-06-21 23:42:32

                                                これを知らなければ、C++プログラマを名乗れない。ITエンジニアも驚いた「C言語」の配列の仕組み→「初めて知った」「配列へのアクセスの書き方が糖衣構文」
                                              • ITエンジニア、何かを登録するという意味で「regist」という変数を使いがちだけど、そもそも「regist」には登録するという意味は無い話

                                                かわさき@Flutterで個人開発💻 @kwsk_create 本業PHPer。Laravel、CakeでWebアプリ、Flutterでモバイルアプリを開発中の都内在住4年目SE💻。国内旅行好き✈️ marshmallow-qa.com/78pfxt4rgxdjsq… かわさき@Flutterで個人開発💻 @kwsk_create ITエンジニア、何かを登録するという意味で「regist」という変数を使いがちだけど、そもそもregistには登録するという意味は無いんだよな。 2024-06-25 18:02:29

                                                  ITエンジニア、何かを登録するという意味で「regist」という変数を使いがちだけど、そもそも「regist」には登録するという意味は無い話
                                                • Pythonのif文やfor文の終わりを明示せずにインデントに意味を持たせる記法、いつまで経っても慣れない話→インデントと視認性について賛否両論

                                                  ミック @copinemickmack Pythonのif文やfor文の終わりを明示せずにインデントに意味を持たせる記法、いつまで経っても慣れないな…これ視認性悪くてバグの温床だと思うんだけど、みんな平気なん?

                                                    Pythonのif文やfor文の終わりを明示せずにインデントに意味を持たせる記法、いつまで経っても慣れない話→インデントと視認性について賛否両論
                                                  • プログラミング言語Rustになぜ注目するのか - Qiita

                                                    この記事は NTTコムウェア AdventCalendar 2023 5日目の記事です。 自己紹介&動機 高鶴と申します。NTTコムウェア コーポレート革新本部で、プログラム設計~コーディング~ユニットテストにかかわる技術の社内標準化をやっております。 プログラムの静的な解析で早期にバグを発見・修正することで、後工程でのバグ対処コスト削減(ウォーターフォール開発の場合)や、技術的負債の早期解消(アジャイル開発の場合)を目指す、というのが私のチームの仕事の大きな一部となっています。 静的な解析で早期にバグを発見するツールには、オープンソースでも商用でも様々なものがあります。しかし、ソフトウェアの品質をより抜本的に良くしていこうと思うと、「プログラミング言語を何とかする」というところを考えたくなってきます。 Rustであれば、そのような期待に応えてくれるのではないかと期待し、調査・検証を始めま

                                                      プログラミング言語Rustになぜ注目するのか - Qiita
                                                    • アップル、新しいプログラミング言語「Pkl」をオープンソースで公開。コンフィグレーション生成用 | テクノエッジ TechnoEdge

                                                      ITジャーナリスト/Publickeyブロガー。IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。 アップルは、さまざまなコンフィグレーションファイルを生成するための静的型付言語「Pkl」(発音はPickle=ピックル)をオープンソースで公開しました。 ソフトウェアやクラウドサービスなどの設定に用いるコンフィグレーションファイルはどんどん複雑になってきており、利用者が望む詳細な設定を、一般的なコンフィグレーションファイルのフォーマットとして使われているJSONやYAML、XMLプロパティリストなどの形式で正確に記述することは難しくなってきています。 Pklはそうしたコンフィグレーションを正確かつ分かりやすく記述するために開発された、特定目的用のプログラミング言語だと説明されています。 Configuration-as-Codeを実現するた

                                                        アップル、新しいプログラミング言語「Pkl」をオープンソースで公開。コンフィグレーション生成用 | テクノエッジ TechnoEdge
                                                      • スタートアップは静的型付言語しか勝たん

                                                        序章 静的型付け言語がスタートアップにおける成長戦略にどのように貢献するかを解説する記事です。 静的型付け言語とは 静的型付け言語とは、プログラムの実行前に変数の型が決定され、コンパイル時に型チェックが行われる言語のことです。Java、C#、Rust、TypeScript、Goなどが代表的です。実行前にエラーを発見しやすく、大規模なプロジェクトや長期的なメンテナンスに適しています。 静的型付け言語のメリット エラーの早期発見 静的型付け言語は、コンパイル時に型の不一致や変数の誤用を検出します。これにより、ランタイムエラーが減少し、開発初期段階で問題を発見できるため、時間とコストの節約につながります。 コードの可読性と保守性 型情報がコードに明示されているため、他の開発者がコードを理解しやすくなります。チームが拡大する際に、コードの保守性を高める重要な要素です。 パフォーマンスの最適化 静的

                                                          スタートアップは静的型付言語しか勝たん
                                                        • Uiua

                                                          Uiua (wee-wuh) is a general purpose, stack-based, array-oriented programming language with a focus on simplicity, beauty, and tacit code. Uiua lets you write code that is as short as possible while remaining readable, so you can focus on problems rather than ceremony. The language is not yet stable, as its design space is still being explored. However, it is already quite powerful and fun to use!

                                                          • 「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス

                                                            米ホワイトハウス国家サイバー局長室(The White House Office of the National Cyber Director:ONCD)は、2024年2月26日(米国時間)、サイバー空間における攻撃対象領域(アタックサーフェス)を積極的に削減するよう技術コミュニティーに呼びかける報告書を発表した。 ONCDは、IT企業がメモリ安全なプログラミング言語を採用することで、あらゆる種類の脆弱(ぜいじゃく)性がデジタルエコシステムに侵入するのを防ぐことができると述べている。ONCDはまた、サイバーセキュリティの品質を測定するより優れた診断の開発を可能にするために、ソフトウェアの測定可能性の問題に取り組むことを奨励している。 関連記事 Google、「メモリ安全性」に関する見解と対策をまとめたホワイトペーパーを公開 Googleは、「セキュアバイデザイン:メモリ安全性に関するGoo

                                                              「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス
                                                            • プログラミング言語ごとのコミュニティの最大規模はJavaScriptの約2520万人、続いてPythonが1820万人、Javaが1770万人など。SlashDataの調査

                                                              プログラミング言語ごとのコミュニティの最大規模はJavaScriptの約2520万人、続いてPythonが1820万人、Javaが1770万人など。SlashDataの調査 ソフトウェアデベロッパーを中心とした調査会社のSlashDataは6月15日、2024年第1四半期時点のプログラミング言語ごとのコミュニティの大きさについてのレポートを発表しました。 これは同社が行った世界135カ国から1万人以上の回答者を集めたアンケート結果などを基に同社が推測しレポートとして発表する予定の内容の一部を公開したものです。 下記は同社が発表したプログラミング言語別のコミュニティを大きさ順に示した図の一部を切り取ったものです。 これによると、最大のコミュニティを持つプログラミング言語はJavaScriptで2520万人。もっともポピュラーな用途はWeb開発となっています。ただしこの人数にはTypeScri

                                                                プログラミング言語ごとのコミュニティの最大規模はJavaScriptの約2520万人、続いてPythonが1820万人、Javaが1770万人など。SlashDataの調査
                                                              • Rustで作る!自作言語・コンパイラ入門:学園生活研究部

                                                                Rustで自作言語とコンパイラを作るために必要な知識と実装手法を初心者向けに簡単に説明することを試みました。パーサコンビネータやLLVM関連のライブラリを利用し、Rustで自作言語やコンパイラ作りをやっていきます。

                                                                  Rustで作る!自作言語・コンパイラ入門:学園生活研究部
                                                                • GitHub - candy-lang/candy: 🍭 A sweet, functional programming language that is robust, minimalistic, and expressive.

                                                                  🚧 Work in Progress! Candy is still in its early stages. We are actively working on it, but it's not ready for production use yet. If you want to help, please join our Discord server. See also: The current state. A sweet, functional programming language that is robust, minimalistic, and expressive. Many programming languages have a strict separation between compile-time and runtime errors. Sometim

                                                                    GitHub - candy-lang/candy: 🍭 A sweet, functional programming language that is robust, minimalistic, and expressive.
                                                                  • NeoHaskell

                                                                    NeoHaskell is a dialect of Haskell that is focused on newcomer-friendliness and productivity. It is designed to be easy to learn and use, while also being powerful enough to release your app with minimum effort and maximum confidence.

                                                                      NeoHaskell
                                                                    • Moonbit: the fast, compact & user friendly language for WebAssembly

                                                                      The importance of WebAssembly (Wasm), a cross-platform Instruction Set Architecture (ISA), is escalating in Cloud and Edge computing, given its efficiency, security, compactness, and open standard. However, its true potential remains untapped. Low level Wasm languages like Rust and C/C++ are challenging to learn and can be slow for developers because of their long compilation time. On the other ha

                                                                        Moonbit: the fast, compact & user friendly language for WebAssembly
                                                                      • Cassette

                                                                        Cassette is a small, Lisp-like programming language. It looks like this: import List import Math import Canvas import System let width = 800, height = 480, canvas = Canvas.new(width, height) canvas.text("Lines!", {200, 2}) System.seed(System.time()) def rand-line(i) do let x0 = Math.floor(i * width / 100), y0 = Math.rand-int(20, height / 10), x1 = Math.rand-int(0, width), y1 = Math.rand-int(20, he

                                                                        • Onyx, a new programming language powered by WebAssembly

                                                                          Back to articlesOnyx, a new programming language powered by WebAssemblyLearn about Onyx, a new imperative programming language that leverages WebAssembly and Wasmer for seamless cross-platform support What is Onyx? Onyx is a new programming language featuring a modern, expressive syntax, strict type safety, blazingly-fast build times, and out-of-the-box cross platform support thanks to WebAssembly

                                                                            Onyx, a new programming language powered by WebAssembly
                                                                          • Javaはなぜかっこ悪いと思われているのか、ChatGPTと共に原因を探ってみた

                                                                            プログラミング分野でよく話題になるのが「どのプログラミング言語が優れているか」というテーマだ。個人的には「どんな言語を使っていようとプログラミングの本質は変わらないので、不毛な議論ではないか」と感じることが多い。それぞれの案件に適した言語を使えばいいだけではないかと思ってしまう。 もっとも、これは日常的にプログラミングをしていない部外者の意見かもしれない。日々のソフトウエア開発業務では、プログラミング言語は最も重要なツールの1つだ。どんなツールを使うかが開発効率に直結することは大いにあり得る。 例えていえば、コード入力に使うキーボードのようなものだろうか。どんなキーボードでも気にしないエンジニアがいる一方で、キーボードのタッチに異様にこだわるエンジニアもいる。後者にとって、特定のキーボードを利用できるかどうかは開発効率を左右する死活問題だ。プログラミング言語にも、それに似た面があるのかもし

                                                                              Javaはなぜかっこ悪いと思われているのか、ChatGPTと共に原因を探ってみた
                                                                            • Onyx Programming Language

                                                                              A data-oriented, expressive, and modern programming language

                                                                              • moonbit で json パーサーを書いてみた 感想

                                                                                エアプにならないために、実際に moonbit を使ってコードを書いてみた感想を書く。 JSON Parser を書いた パッケージレジストリである https://mooncakes.io を見た限り、使いやすい json parser がなさそうなので、とりあえず自分用のをでっち上げた。 mooncakes.io に publish してあるので、 moon add mizchi/json で使える。品質が良くなくても ネームスペース付きで publish するので別に邪魔にならない気がした。 なんで作ったかというと、公式 example の cloudflare workers の example は単純なフィボナッチを計算するだけで、構造的なデータを返すことができない。 moonbit と js 間の文字列の受け渡しについては、あとで別の記事を書く。 使い方 fn main { l

                                                                                  moonbit で json パーサーを書いてみた 感想
                                                                                • Appleがシステム構成のためのプログラミング言語「Pkl」をオープンソースでリリース

                                                                                  Appleがシステム構成を作成するためのプログラミング言語である「Pkl(ピックル)」をオープンソースとしてリリースしました。Pklで構成を記述することで、必要に応じてJSONやYAMLのほか、Kotlin、Ruby、JavaScriptなどの形式で自由に出力することが可能とのことです。 Pkl :: Pkl Docs https://pkl-lang.org/index.html apple/pkl: A configuration as code language with rich validation and tooling. https://github.com/apple/pkl システム構成を記述する際にはJSONやYAML、プロパティリスト(plist)などの静的言語を用いる場合が多いものの、表現力に限界があってコードが頻繁に繰り返されたり、独自の検証を提供しないために構文

                                                                                    Appleがシステム構成のためのプログラミング言語「Pkl」をオープンソースでリリース