並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 596件

新着順 人気順

ProgrammingLanguageの検索結果361 - 400 件 / 596件

  • GitHub - robertmuth/Cwerg: The best C-like language that can be implemented in 10kLOC.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

      GitHub - robertmuth/Cwerg: The best C-like language that can be implemented in 10kLOC.
    • uxntal

      Rostiger's Uxn Zine16X08 A programming language for the Uxn virtual machine. Uxn programs are written in a stack-based flavor of assembly designed especially for a portable virtual machine. Zine, by Clemens Scott. Cheatsheet, by Weeble. Tutorial, by Compudanzas Manual(7), by Eiríkr Åsheim. BNF Notation, by Jack Leightcap. Quick Setup Here is a quick way to get started writing programs with a littl

        uxntal
      • Lean (証明アシスタント) - Wikipedia

        Cantorの定理をLeanで示している様子.右側の infoview に今使える仮定と示すべきゴールが常に表示される. Lean は、プログラミング言語の一つである。「衛生的でありながら非常に強力なメタプログラミングフレームワークを備えた純粋関数型プログラミング言語」であり、同時に「Calculus of Inductive Constructions (CIC) と呼ばれる依存型の一種に基づく定理証明支援系」でもあるという2つの顔を持つ。この、汎用プログラミング言語でありながら定理証明支援系でもあるという点は Lean の大きな特徴である。 Lean は純粋関数型プログラミング言語でありながら、標準でループや可変ローカル変数の構文を備えているほか、一定の条件の下で関数アクセスをフィールドアクセスのように書くことができるという構文上の特徴がある。また、「参照カウントに基づいて自動的に破壊

          Lean (証明アシスタント) - Wikipedia
        • Cognition

          Lisp programmers claim that their system of s-expression code in addition to its featureful macro system makes it a metaprogrammable and generalized system. This is of course true, but there's something very broken with lisp: metaprogramming and programming aren't the same thing, meaning there will always be rigid syntax within lisp (its parentheses or the fact that it needs to have characters tha

          • A visual programming environment for audio experimentation, prototyping and education ⋅ plugdata

            A visual programming environment for audio experimentation, prototyping and education plugdata is a free/open-source visual programming environment based on pure-data. It is available for a wide range of operating systems, and can be used both as a standalone app, or as a VST3, LV2, CLAP or AU plugin. plugdata allows you to create and manipulate audio systems using visual elements, rather than wri

            • Circle C++ with Memory Safety

              If you are not redirected automatically, follow this link to example.

              • 数当てゲームのプログラミング - The Rust Programming Language 日本語版

                数当てゲームのプログラミング ハンズオン形式のプロジェクトに一緒に取り組むことで、Rustの世界に飛び込んでみましょう! この章ではRustの一般的な概念を、実際のプログラムでの使い方を示しながら紹介します。 let、match、メソッド、関連関数、外部クレートの使いかたなどについて学びます! これらについての詳細は後続の章で取り上げますので、この章では基本的なところを練習します。 プログラミング初心者向けの定番問題である「数当てゲーム」を実装してみましょう。 これは次のように動作します。 プログラムは1から100までのランダムな整数を生成します。 そして、プレーヤーに予想(した数字)を入力するように促します。 予想が入力されると、プログラムはその予想が小さすぎるか大きすぎるかを表示します。 予想が当たっているなら、お祝いのメッセージを表示し、ゲームを終了します。 新規プロジェクトの立ち上

                • You are are being redirected...

                  • SML#プロジェクト

                    SML#はオープンソースの関数型プログラミング言語です。Standard MLと互換性を保ちながら、C言語やデータベースとの連携など実用上重要な機能を備えています。詳しくは「SML#について」をご覧ください。 val puts = _import "puts" : string -> int fun f x = ignore (puts (#b x)) val _ = f {a = "Hi", b = "Hello"} val _ = f {b = "World", c = "SML#"} 最近のニュース SML# 4.2.0 リリース 2025年3月24日 SML# 4.2.0 がリリースされました。 もっと読む... SML# 4.1.0 リリース 2024年11月15日 SML# 4.1.0 がリリースされました。 もっと読む... SML#の教科書が出ました 2021年4月15日

                    • EndBASIC

                      EndBASICBASIC interpreter + DOS environment, reimagined. Launch interpreter Back to basicsEndBASIC is an interpreter for a BASIC-like language and is inspired by Amstrad's Locomotive BASIC 1.1 and Microsoft's QuickBASIC 4.5. Like the former, EndBASIC intends to provide an interactive environment that seamlessly merges coding with immediate visual feedback. Like the latter, EndBASIC offers higher-l

                      • Counterexamples in Type Systems - Counterexamples in Type Systems

                        collated by Stephen Dolan, with thanks to Andrej Bauer, Leo White and Jeremy Yallop

                        • 【PHP8.5】PHPでパイプライン演算子が使えるようになる - Qiita

                          $string = random_bytes(10); $string = str_repeat($string, 2); $string = str_replace($string, 'c', 'z'); $string = substr($string, 5); $len = strlen($string); ↑は適当に作っただけなので全く意味のない処理ですが、だいたいこんなかんじで値に対して順番に関数を適用していくかんじです。 まあこの後クラスやらClosureやらどんどん入ってきて、なんでもできるマルチパラダイム言語になりつつありますが。 さてこの書き方、1文にまとめようとするととたんにわかりにくくなります。

                            【PHP8.5】PHPでパイプライン演算子が使えるようになる - Qiita
                          • 並置による関数適用に関する所感

                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                              並置による関数適用に関する所感
                            • Redirect

                              Click here to be redirected.

                                Redirect
                              • Haskellで型レベルパーサー

                                ghc-9.6.1です。 GHCはChar kindが9.2で入ったので型レベルパーサーが書ける様になってるんですよね。ということで書いてみました。 BNFは以下です: expr ::= term *('+' term) term ::= factor *('*' factor) factor ::= '(' expr ')' | nat nat ::= 0 | 1 | 2 | ... | 9 {-# Language TypeData #-} {-# Language DataKinds #-} {-# Language TypeFamilies #-} {-# Language UndecidableInstances #-} {-# Language TypeApplications #-} {-# Language MagicHash #-} {-# LANGUAGE NoStar

                                  Haskellで型レベルパーサー
                                • Planner programming blows my mind

                                  Picat is a research language intended to combine logic programming, imperative programming, and constraint solving. I originally learned it to help with vacation scheduling but soon discovered its planner module, which is one of the most fascinating programming models I’ve ever seen. First, a brief explanation of logic programming (LP). In imperative and functional programming, we take inputs and

                                  • Welcome to Claro! - The Claro Programming Language (DRAFT)

                                    Welcome to Claro! Claro is a statically typed JVM language that provides a well-lit path to building simple, highly concurrent, and scalable applications. Dependency Management Done Right Claro was designed with modern build tooling in mind: Swap any dependency without changing a single line of source code Runtime "Dependency Injection" frameworks are a thing of the past First class Module system

                                    • Rust+LLVMでおもちゃ言語を作ったお話 - Qiita

                                      初日の記事で紹介されてる (今年度の生徒たちのコンテスト成果 一番上) JPNYKWです. 今回は自作言語もRustもLLVMも何もかも初めての 超絶初心者 である私が, 1ヶ月間学びながら簡単な自作言語に挑戦したので, これまでどのように学び開発をして行ったかを綴ろうと思います. また, 知識も無いので高度な内容は書けません, ご了承ください. 間違いもあると思いますので, 指摘していただけると助かります. ※偶然にも @Garnet3106 さんの 19日目の記事 と自作言語ネタが被りました 言語紹介 おもちゃ言語と呼んでいます. 高度な機能はありませんし, 未完成です. 期待はしないでください (重要) 言語名は plat と言います. 意味は playthings の省略です. 構文紹介 最初に, この言語の構文を簡単に紹介します. 基本的には LLVM Tutorial で開発し

                                        Rust+LLVMでおもちゃ言語を作ったお話 - Qiita
                                      • GitHub - leanprover/lean4: Lean 4 programming language and theorem prover

                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                          GitHub - leanprover/lean4: Lean 4 programming language and theorem prover
                                        • The Berry Script Language

                                          Berry is a ultra-lightweight dynamically typed embedded scripting language. It is designed for lower-performance embedded devices. The Berry interpreter-core's code size is less than 40KiB and can run on less than 4KiB heap (on ARM Cortex M4 CPU, Thumb ISA and ARMCC compiler). The interpreter of Berry include a one-pass compiler and register-based VM, all the code is written in ANSI C99. In Berry

                                          • 2025年に学習をおすすめしたい人気プログラミング言語ランキング | HonNe(ホンネ)

                                            トップスキル・学びITスクール2025年に学習をおすすめしたい人気プログラミング言語ランキング 当ページに含まれる広告と商品評価について 当ページには広告が含まれ、当ページ経由の商品・サービスへの申込みで、当社が提携する企業から報酬を受け取る場合があります。ただし、当ページのランキングや商品の評価は当サイト独自の調査やレビューなどコンテンツポリシーに基づいて決定しています。 2025年に学習をおすすめしたい人気プログラミング言語ランキング 最終更新日:2025年08月15日 数百種類と言われるプログラミング言語ですが、IT技術のトレンドや新しい言語の登場で人気プログラミング言語のランキングは年々変化します。またWEBサイトやスマホアプリ、ゲーム、業務システムなどシステムの種類や開発目的でも利用言語が違い、ITエンジニアやプログラマーの求人数、副業・フリーランスの案件数、平均年収も違います。

                                              2025年に学習をおすすめしたい人気プログラミング言語ランキング | HonNe(ホンネ)
                                            • GitHub - Vexu/toy-lang: Toy language for experimentation and fun.

                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                GitHub - Vexu/toy-lang: Toy language for experimentation and fun.
                                              • Dafny

                                                Dafny is a verification-aware programming language that has native support for recording specifications and is equipped with a static program verifier. By blending sophisticated automated reasoning with familiar programming idioms and tools, Dafny empowers developers to write provably correct code (w.r.t. specifications). It also compiles Dafny code to familiar development environments such as C#,

                                                • Unification-free ("keyword") type checking

                                                  From my perspective, one of the biggest open problems in implementing programming languages is how to add a type system to the language without significantly complicating the implementation. For example, in my tutorial Fall-from-Grace implementation the type checker logic accounts for over half of the code. In the following lines of code report I’ve highlighted the modules responsible for type-che

                                                    Unification-free ("keyword") type checking
                                                  • LispKit Lisp処理系の実装 序 - Arantium Maestum

                                                    純粋関数型Lisp方言であるLispKit LispのインタプリタとSECD抽象機械の機械語へのコンパイラを作成する。 タネ本はHendersonの「Functional Programming - Application & Interpretation」で、この本に載っているISWIMやPASCALのコードを大体なぞるようにPythonで書いていく。(最近出た「コンパイラー原理と構造ー」でもSECDマシンへのコンパイルの話題が出ているらしいがまだ届いていないので未確認・・・) 例によって長くなるので複数の記事に分ける。 流れとしては以下のようになる: LispKit Lispの紹介 (本記事) パーサとAST インタプリタ 前編 後編 SECD抽象機械の実装 1 2 3 SECD機械語へのコンパイラ SECD抽象機械ガベージコレクション LispKit Lisp LispKit Lis

                                                      LispKit Lisp処理系の実装 序 - Arantium Maestum
                                                    • Rustのopen traitシステム dyno (RFC3192) を読む

                                                      dyno (RFC3192) はopen traitのための仕組み (言い換えると、trait downcastingの仕組み) をライブラリレベルで実現する提案です。 できることのイメージ 例として、以下のようなトレイトを考えます。 (std::error::Error を説明のために簡略化したものです) // エラー型はこれを実装する pub trait Error { // エラーの文字列表現を取得する fn to_string(&self) -> String; } これを拡張可能トレイトにするのが本RFCの目的です。 実際の実装はライブラリレベルで行われていますが、わかりやすくするために「拡張構文として書くならこんな感じ」というイメージを先に説明します。 open traitとしての説明 次のように、定義済みのError traitを拡張できる仕組みであると説明できます。 ⚠️こ

                                                        Rustのopen traitシステム dyno (RFC3192) を読む
                                                      • Toit programming language

                                                        Documentation Blog GitHub Toit is a modern high-level language designed specifically for microcontrollers Toit is optimised for live reloading on your microcontroller. Your code runs incrementally as you write it and you get instant feedback. Push changes over your local WiFi in two seconds and reserve your USB cable for charging your phone. You iterate quickly, learn fast, and build better things

                                                        • Rustを使うのはこんなに楽しい!「不思議な予想」で体験しよう

                                                          今回は、Rustで書いたアプリケーションを実際に動かして、Rustを使う楽しさを体感してみよう。例題に選んだのは「コラッツ予想」という数学の問題だ。 コラッツ予想は、いまだに解決されていない不思議な問題である。任意の正の整数nに次のルールの操作を繰り返すことで、どんな整数であっても必ず最後には1になる、というものだ。 n が偶数の場合には、nを2で割る n が奇数の場合には、nに3をかけて1を足す 例えば6という整数を例にとると、次のように計算が進んでいく。今回はこうした計算をRustで再現してみる。 6は偶数なので、2で割る→3 3は奇数なので、3をかけて1を足す→10 10は偶数なので、2で割る→5 5は奇数なので、3をかけて1を足す→16 16は偶数なので、2で割る→8 8は偶数なので、2で割る→4 4は偶数なので、2で割る→2 2は偶数なので、2で割る→1 Rustとプロジェクトを

                                                            Rustを使うのはこんなに楽しい!「不思議な予想」で体験しよう
                                                          • Mojo Manual | Modular

                                                            Welcome to the Mojo Manual, your complete guide to the Mojo🔥 programming language! Combined with the Mojo API reference, this documentation provides everything you need to write high-performance Mojo code for CPUs and GPUs. If you see anything that can be improved, please file an issue or send a pull request for the docs on GitHub. Get started with a tutorial What is Mojo​ Mojo is a systems progr

                                                              Mojo Manual | Modular
                                                            • Ruby 3.0.0-preview2 リリース

                                                              Posted by naruse on 8 Dec 2020 Ruby 3.0に向けてフィードバックを得るためのリリースである、Ruby 3.0.0-preview2が公開されました。 Ruby 3.0には、多くの新しい機能やパフォーマンスの改善が含まれます。 その一部を以下に紹介します。 静的解析 RBS RBSはRubyプログラムの型を記述するための言語です。 TypeProfなどの型検査ツールを初めとする静的解析を行うツールは、RBSを利用することでRubyプログラムをより精度良く解析することができます。 RBSでは、Rubyプログラムのクラスやモジュールの型を定義します。メソッドやインスタンス変数、定数とその型、継承やmixinなどの関係などが記述できます。 RBSはRubyプログラムに頻出するパターンをサポートするように設計されており、ユニオン型、メソッドオーバーロード、ジェネリ

                                                              • DTMプログラミング言語探訪 - Qiita

                                                                はじめに DTMのソフトウェアに組み込まれているプログラミング言語について実際に使ってみて調べてみる企画です。 最近のDTMソフトウェアには、テキストのプログラミング言語で操作できる機能が搭載されているものがいくつか存在します。しかしながら、DTMソフトウェアの知識とプログラミングスキルの両方が必要になるため、使いこなしている例はあまり多くないようです。 また、信号処理用の言語1と異なり学術研究の対象にもなりにくい存在です。そのため、これらの言語を網羅的に調査して比較した情報もほとんどありません。 ここで扱う言語はベンダー独自仕様の言語や汎用プログラミング言語、プログラミング言語とは呼べない設定ファイルのようなものなど様々ですが、それぞれの言語の違いと、主な用途、できることできないこと、実際に使用するための手順を明確にしたいと考えています。 DTMプログラミング言語 NI KONTAKT

                                                                  DTMプログラミング言語探訪 - Qiita
                                                                • ライフタイムで参照を検証する - The Rust Programming Language 日本語版

                                                                  ライフタイムで参照を検証する 第4章の「参照と借用」節で議論しなかった詳細の一つに、Rustにおいて参照は全てライフタイムを保持するということがあります。 ライフタイムとは、その参照が有効になるスコープのことです。多くの場合、型が推論されるように、 大体の場合、ライフタイムも暗黙的に推論されます。複数の型の可能性があるときには、型を注釈しなければなりません。 同様に、参照のライフタイムがいくつか異なる方法で関係することがある場合には注釈しなければなりません。 コンパイラは、ジェネリックライフタイム引数を使用して関係を注釈し、実行時に実際の参照が確かに有効であることを保証することを要求するのです。 ライフタイムの概念は、他のプログラミング言語の道具とはどこか異なり、間違いなくRustで一番際立った機能になっています。 この章では、ライフタイムの全体を解説することはしませんが、 ライフタイム記

                                                                  • GitHub - roc-lang/roc: A fast, friendly, functional language.

                                                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                      GitHub - roc-lang/roc: A fast, friendly, functional language.
                                                                    • 記法の「軽さ」を最優先した数式マークアップ言語を作った

                                                                      はじめに 軽量マークアップ言語(e.g. Markdown)の中で数式を書くという目的においては、TeX記法がデファクトスタンダードになっている。しかし、軽量マークアップ言語自体の「軽さ」と比較したとき、TeX記法は少し「重い」よな〜、ということを前々から思っていた。 ここで「軽い」ことをもう少ししっかり定義しておくと、「プログラムから見た時の扱いやすさや文法としての単純さよりも、人間にとっての見やすさ書きやすさを重視している」ことという感じになるだろうか。[1] TeX記法もXMLベースのMathMLなどと比べれば圧倒的に軽いのだが、もっと軽くできないものだろうか?特に、僕のようなTeXコードを編集しながら式変形を考えるタイプの人間[2]にとっては、TeX記法でも重すぎると感じることが多い。出てくる記号が多かったり、添え字の添え字のような構造が沢山出てくると、コードは何重にもネストされた

                                                                        記法の「軽さ」を最優先した数式マークアップ言語を作った
                                                                      • The Blots Programming Language

                                                                        Blots is a small, expression-oriented programming language designed to be quick to learn and easy to use. Blots code tends to be very readable yet reasonably compact. Blots is not a general-purpose programming language. Instead, it's designed to be useful out of the box for quick calculations and data transformation, particularly with JSON. Installation The most recent version of Blots is 0.7.4, r

                                                                        • ちょっと先のプログラミング言語を予想する

                                                                          先日κeen@blackenedgoldさんのこちらのブログを読んで、 自分もプログラミング言語について考えていることを書いてみたいと思ったので久しぶりに更新します。 https://keens.github.io/blog/2021/01/04/future_of_proguramming_languages/ 半年ほど前からプログラミング言語を作ってみたいと思っていて、 言語デザインを考える過程で色々な言語を触っているので、それを元にプログラミング言語のごく近い未来を予測してみたいと思います。 基本的には元記事の内容に概ね賛成です。 あまり型レベルプログラミングを突き詰めてしまうと抽象度が増して初心者にとっての参入障壁になってしまわないか心配ですが それもうまく隠蔽されながら進化していくんだと思います。 次にこんな言語がくるぞ!というよりもこうあってほしいという願望に近いので、そのつも

                                                                            ちょっと先のプログラミング言語を予想する
                                                                          • The Koka Programming Language

                                                                            // A generator effect with one operation effect yield<a> fun yield( x : a ) : () // Traverse a list and yield the elements fun traverse( xs : list<a> ) : yield<a> () match xs Cons(x,xx) -> { yield(x); traverse(xx) } Nil -> () fun main() : console () with fun yield(i : int) println("yielded " ++ i.show) [1,2,3].traverse // A generator effect with one operation effectindex/yield: (V, E, V) -> V yiel

                                                                            • The Verse Calculus: a core calculus for functional logic programming

                                                                              Abstract Functional logic languages have a rich literature, but it is tricky to give them a satisfying semantics. In this paper we describe the Verse calculus, VC, a new core calculus for deterministic functional logic programming. Our main contribution is to equip VC with a small-step rewrite semantics, so that we can reason about a VC program in the same way as one does with lambda calculus; tha

                                                                                The Verse Calculus: a core calculus for functional logic programming
                                                                              • Amber Documentation

                                                                                Documentation for Amber programming language

                                                                                  Amber Documentation
                                                                                • GitHub - breck7/scroll: Scroll is a language for scientists of all ages. Scroll includes a command line app that builds static blogs, websites, CSVs, text files, and more.

                                                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                                    GitHub - breck7/scroll: Scroll is a language for scientists of all ages. Scroll includes a command line app that builds static blogs, websites, CSVs, text files, and more.

                                                                                  新着記事