t_wの輪郭

Feedlyでフォローするボタン
言語路組言語
大規模言語モデルにとってプログラミング言語は簡単Go言語PrologRustプログラミング言語を作りたいJavaScriptC++C言語あれD言語あれスクリプト言語路組言語『「英語は新しいプログラミング言語であり、生成的AIは新しいコンパイラだ」。英語対応のためのSDK「English SDK for Apache Spark」をデータブリックスが発表』プログラミング言語は語彙数が少ないプログラミング言語は形式化されている『【大いなる罠】プログラミング言語の意味論を勉強したら7時間がムダになった』『プログラミング言語の形式的意味論入門』『プログラミング言語の基礎理論』『【ブロックプログラミング言語】Trees を作りました』論理プログラミング言語ZigHaskellLispScala依存型プログラミング言語F*HaxeIdris『「生成AI×ビジュアルプログラミング」が進まない理由は?中山心太氏に聞く、高級言語との本質的な違い | レバテックラボ(レバテックLAB)』プロユースのプログラミング言語言語変換

Haxe

2024/8/18 17:36:00

F*

2024/8/4 0:15:00

Zig

2024/6/6 23:38:00

Lisp

2024/3/29 0:03:00

あれ

2023/5/31 13:55:00

現代のプログラミング言語はまだまだ論理の表現密度が低く、論理からソースコードへの変換という単純作業なので、脳内で奇声をあげて単純作業の苦痛に耐えている。

JavaScript

2022/8/4 19:23:00

JavaScript(ジャヴァスクリプト)は,スクリプト言語の一つである。

1995年にネットスケープで開発され,ウェブ ブラウザーNetscape Navigator で実装された。現在に至るまで,ウェブ ブラウザー上で実行できるスクリプト言語としての性格が強い。

Java を意識して作られたため「JavaScript」という名称になっているが,直接の関係はなくまったく別の言語である。

マイクロソフトも追随し JScript を開発した。

Ecma International(旧 ECMA)によって標準化されており,この仕様は ECMAScript と呼ばれている。

ECMAScript は JavaScript 実装の標準化基準として広く採用されている(2009年時点では ECMA-262 3rd edition の採用が一般的)。

あれNode.jsthrowデライトからScrapboxへ転記するスクリプトのジェネレータTypeScriptからJavaScriptへの移行あれ一応 Rust の利を挙げるとすれば no_std のライブラリは一通り使える一方で AssemblyScript だと 既存の JS やら TS の資産は基本的に使えないということぐらいかあれOxlintあれJavaScriptライブラリself.crypto.randomUUID()constあれletfunctionアロー関数式あれMap『大規模なデータをJSON.stringifyとBlobを使って保存しようとしたら,ブラウザがエラーを出すときの対処法』JSON.stringifyあれ技術情報を掘るときに、日本語で検索しても出てこないんだろうなという諦観があるMacaronマイクロフロントエンド実装の方法危険なJavaScriptHTMLとJavaScriptでプロトタイプを作って利用者の操作を取得することでユーザーテストするJSX『t_wの輪郭』の輪郭に編集日時を表示Node.jsのBufferの比較『(自分の) JavaScript のユニットテストの書き方』DatetoISOStringあれawait付け忘れjsでawaitを付け忘れるawaitalertデバッグJavaScriptのString#splitでいい感じに変数に格納する書き方JavaScriptでevent handlerを実装する標準的方法「[Javascript] イベント駆動型の設計ができるEventEmitterに入門」customeElementWatcherEventHandler.webidl『Error の cause オプションによってエラーの再 throw 時にスタックトレースが失われるのを防ぐ【ES2022】』ES2022causeErrorfor awaitgeneratorJavaScriptで「#」をエンコードするには、encodeURIComponentを使うchromeEventHandlerFirefoxのDOMのEventHandlerの実装あれあれあれあれprologをクエリをJavaScriptの関数化WebAssembly.compileBigIntTau Prolog『JavaScriptにおける表明(assertion)の話』『javascriptのオブジェクトリテラルは評価されるまでは、あくまでブロック文でしかない』Ramda.jsconsole.table()AlaSQL連想配列JavaScriptのMapは、100万項目入れても大丈夫JavaScriptでオブジェクトを連想配列として使っていたらバグったAssemblyScriptではJavaScript/TypeScriptのライブラリは使えない了解!console()=>({})あれJScriptWindows Script HostECMAScriptKuromojiJavaScript一家離散問題JavaScriptの四値論理JavaScriptでは、どこか1ヵ所がasync関数になると、芋づる式に他の関数もasyncへの変更が必要となりますIteratorjsiioxcObjectJavaScriptでC言語をコンパイルJavaScripotReflectProxyJawsm

C++

2022/5/12 15:03:00

あれ

2022/3/23 14:59:00

 欧米が作った思想に乗っ取って、欧米が作ったプログラミング言語を使い、欧米が作った基盤(クラウド・OS・ハードウェア)の上で事業をするというのが日本のIT企業のやり方になってしまっている。クラウドもアメリカ製のものばかりだ。
 日本はアメリカと戦争をできるか?したとしたらどうなるか?という思考実験をたまにするのだが、これらのIT基盤がアメリカに握られていては戦いにすらならないだろうなと思う。IT基盤は国防問題だ。今はまだアメリカのポチでいられるが、アメリカの気が変わり搾取の度合いが増した時には困り果てることになる。現時点でもう困っているのかもしれない。アメリカの気分次第では、今ウクライナ侵攻によってロシアが受けているような制裁を受ける可能性がありうる。もしくは機嫌を損ねないように立ち振る舞い続けるかだ。軍事的にも、経済的にも。
 その点で中国はうまくやっている。自前で様々な基盤を開発しており、もし戦争になったとしても骨抜きにならないようにしている。度々制裁を受けているが、定期的なモンキーテストのようなものでその度に制約を乗り越えていくだろう。

 SIer企業がこれらを欧米が作った基盤を跳ね除けるのは不可能に近い。利益を出すなら(初期費用は)安価で手軽かつ高品質なこれらを活用するほかない。契約の期間内での利益を最大化することでしか生き残ることができない。

Rust

2022/2/18 20:22:00

プログラミング言語

PRRTTスタック『「Rust」「Tauri」などのモダン技術で開発されたWin/Mac/Linux対応ファイラー「Spacedrive」』Tauri『この技術が分からん2020』『多コピーの原罪』String『Fast and Portable Llama2 Inference on the Heterogeneous Edge』一応 Rust の利を挙げるとすれば no_std のライブラリは一通り使える一方で AssemblyScript だと 既存の JS やら TS の資産は基本的に使えないということぐらいかあれRust から WebAssembly にコンパイルするElectronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達Cloudflare workersの対応言語burnRyeあれクレートルートファイルクレートルート+演算子による文字列の結合RustからWebAssembly (wasm)を生成してJavaScriptとブリッジ通信してみるOxlintRustでセル・オートマトンを作りたいwgpuあれRustの勉強あれif letifHashMapの値を変更Rustの文字列リテラルを文字として走査ベクタの値を走査するformatpush_strRustの勉強しながらいろいろ書いてるけど壮大に間違えてる気がするRustの文字列リテラルをbyteとして走査HashMapの値を取得let関連関数RefCell<T>と内部可変性パターンrustc --explain E0106 日本語訳&'ライフタイム指定子Rustでは関数で作成した変数への参照を戻り値で渡すことはできない&'staticあれぶら下がり参照戻り値rustc –explain E0106生存期間指定子error[E0106]: missing lifetime specifierrustcerror[E0782]: trait objects must include the dyn keywordBoxrustc –explain E0782 日本語訳「Rustでは、 自動的にデータの"deep copy"が行われることは絶対にない」clone『所有権とは?』Rc<T>をクローンすると、参照カウントが増えるcloneを使用する代償借用Rustにて関数内で引数を変更するBox<dyn Foo>Result<(), Box<Error>>特質トレイトDropDerefIteratorRustのクロージャはFn特質を実装しているFn戻り値の型が特質を実装していることを指定する参照外し型強制は、 Derefを実装する型への参照をDerefが元の型を変換できる型への参照に変換しますDerefトレイトを実装して型を参照のように扱うDeref特質を実装することで、参照外し演算子の*の振る舞いを変更できるcollectmapあれあれあれ特質境界構文impltrait特質のデフォルト実装特質を定義するCopyダングリング参照引数の型として特質を使う引数の型が複数の特質を実装していることを指定するあれDropトレイトで片付け時にコードを走らせるiter+構文fnDrop#dropBoxがスマートポインタなのは、Derefトレイトを実装しているから特質を型に実装するBox<Error>Resultmapの試しVecforimpl for関数に変数を渡すことによる所有権の移動可変参照 (&mut) はCopy traitを実装していないborrow of moved value戻り値による所有権の移動参照渡しでは所有権の移動は発生しない&mut可変参照メソッド記法selfHashMapに要素を追加自動参照および参照外しcmp自動参照参照外しstd::cmp::OrderingRustでの参照外し参照外し演算子あれRustで作りたいもの所有権の移動structあれコピーによる所有権の移動あれRc<T>とRefCell<T>を組み合わせることで可変なデータに複数の所有者を持たせる『Rustのトレイトはトレイトではない』『Rustがオブジェクト指向型言語ではないのとその理由』「Rustには継承がない」enummatchの途中放棄(elseみたいなことをする)Enumを使うとベクタに複数の型を保持できるRustのenumとmatchenumの値は、その列挙子のいずれか一つにしかなり得ない構造体更新記法ユニット様構造体タプル構造体ユニット型構造体を可変変数に入れてフィールドを書き換えるRefCellRcトレイトはメソッド群の集合体RustでブラウザアドオンRustのNoneはenumの列挙子()_ => ()あれRustのループ構文forwhileloop「Rustでは、変数は標準で不変(immutable)」クレートモジュールパッケージ はある機能群を提供する1つ以上のクレートクレートはバイナリかライブラリのどちらかrandバイナリクレートライブラリクレートクレートルートとは、Rustコンパイラの開始点となり、クレートのルートモジュールを作るソースファイルパッケージcrateextern crateパッケージは1個までのライブラリクレートを持つことができる型注釈NoneCargocargo builddropmutRustにはnullが存在しないcargo build --releaseあれmatchstd::cmpOrderingstdあれstd::rcstd::memstd::timestd::errorstd::fsstd::envstd::collectionsstd::vecthread::spawnsleepstd::error::Errorstd::fs::Filevarstd::env::argsstd::collections::HashMapuse std::collections::HashMap;static&'static str文字列リテラルResult<Hoge, &'static str>contents&strFile::createFileRustで指定した秒数停止するErrOk『RustのLinux muslターゲット (その1:Linux向けのポータブルなバイナリを作る)』or_insertentryHashMapを表示get_mut{:#?}{:?}SomeOption<&V>getstd::rc::Rcstd::time::DurationcreateHashMapHashMapのキーに値がなかった時のみ値を挿入する&std::mem::drop『Rust製のngrok代替えツール「tunnelto」』パッケージはバイナリクレートをいくつでも持つことができるuseuse super::*;glob演算子use std::io;Rustの文字列リテラルは不変std::io*pub『Linux 以外の OS への対応 - akaza-im / akaza』else iftrueif式の代入superelsefalsebool型参照演算子あれ演算子またはformatマクロで連結#[derive(PartialEq, Debug)]pretty-printDebug?演算子#[derive(Debug)]derive『What #[derive(Display)] generates』Displayborrowベクタの要素を不変変数に借用した場合は、そのベクタの要素を変更・追加できなくなる不変変数の参照は不変『参照と借用』借用チェッカーrand::thread_rng().gen_range(1, 101);#[derive(Display)]モジュールツリーの要素を示すためのパスrand::thread_rngString::new()externBoxはポインタError_ぶら下がりポインタRc<T>は、参照カウント方式のスマートポインタ所有権ベクタの解放tupベクタの走査に参照を使うのは所有権の移動対策文字列リテラルからString型を生成あれ循環参照は、メモリをリークすることもあるString型assert_eqRustで遊んでたら疲れてきたベクタは同じ型の値しか保持できないRc#clone参照渡し配列型ボックスで再帰的な型を可能にする『SeedでRust-onlyなポートフォリオサイトを作ってみた』あれlinesto_lowercaseunion恐れるな!並行性into_iterの試しBiomecargo-lambda「文字列リテラルは、高速で効率的」『Rustで書いたコードをAWS Lambdaにデプロイする』あれStringの難しさcargo run#[cfg(test)]cargo checkCargo.lockfilterの試しRustでコマンドライン引数を受け取るベクタのgetと[]の要素取得の違いRust一家離散問題配列の各要素を取得するあれFerris Saysあれsqlxpulldown-cmark『RustでWebバックエンドを書き始めてから1年くらい経った』『Compilation to WASM?』cargo doccargo new --lib {lib name}cargo testcargo newcargo doc --opencargo test -- --test-threads=1String::fromRustの文字列操作ベクタの変更ベクタの作成Ferriscargo new {project_name} --bincargo test -- --nocapturestrベクタ型rotate_right文字列スライス文字列リテラルは&strRc#weak_countRc#strong_countweak_countstrong_countRefCellを使うことは、内部可変性を得る方法の一つモジュールを複数のファイルに分割する親モジュールから始まる相対パスは、superをつけることで構成できるモジュールの中におけるものResult<T, E>をテストで使う#[test]eprintlnあれスライス型可変参照は特定のスコープで、ある特定のデータに対しては、 一つしか可変な参照を持てない可変参照演算子可変参照は1つしか存在してはいけないprintlnCStrスコープを切れば同じ関数内で複数回の可変参照を使えるRUST_BACKTRACE『Rust入門』args#[ignore]#[should_panic]to_string()『Wingetを利用してWindows11にRust/Rustupを導入する』is_errunwrap_or_elseあれあれRustを勉強するiter()src/lib.rsRustの整数型wasmでRustコンパイラーを動かすあれwingetでRustをインストールmodLinderapanicシャドイングの嬉しさArgsあれstd::mem::dropで早期に値をドロップするpolars『コンセプトから理解するRust』uvRuffCircomoxcRustの機械学習ライブラリDioxus『Effective Rust ―Rustコードを改善し、エコシステムを最大限に活用するための35項目』『Google Online Security Blog: Eliminating Memory Safety Vulnerabilities at the Source』「Google provided a $1,000,000 grant to the Rust Foundation」Rust Foundation『Rust vs. Zig in Reality: A (Somewhat) Friendly Debate  - The New Stack』Effective RustAxumNova『RustによるWebアプリケーション開発 設計からリリース・運用まで』Rust製『RustでWeb開発コソコソ噂話 - Speaker Deck』
あれあれ『Calling AppSync Mutation from Lambda with Golang』あれ『AWS AmplifyでReact(TypeScript)、GraphQL、Lambda(Go)なアプリを作ってみた』Go言語のAmplify functionでGraphQL APIを叩くコード(IAM)あれあれあれAWS AmplifyでGo言語とNext.jsから成るアプリをビルドするアレGo言語でちゃんと日時を変換Go言語で雑に日時を変換-62135596800Go言語のAmplify functionでGraphQL APIを叩くコード(API Key)『AWS Lambda で Go のバイナリを実行すると「/var/task/main: /lib64/libc.so.6: version `GLIBC_2.32' not found」を出力して止まるときにやったこと。』あれHugoあれWindowsでcgoを使う設定GOAMD64『goのエラーをスタックトレースも含めて構造化ログで残したい - エムスリーテックブログ』Cobratempl『goのローカル開発環境でもo11yスタックを活用したい - GammaLab』TinyGo