ときどきの雑記帖 RE* (新南口)
愛の逆上がり 地の巻
そろばん塾
数日前、家のわりと近く(と言ってもあまり行かない地域)で 生徒募集の幟(のぼり)を立てている そろばん塾を見かけて結構驚いた。
ふつうの民家(つーても昭和っぽいそれではなかった)の そろばん塾というのにもまだあるんだと驚いたけど、 どこで作ったんだろうあの幟。
mkdir -p
ふと、
-p, --parents ディレクトリが存在していてもエラーを返さない。必要に応じて親ディレクトリを作成する
のようなことをcmd.exeやPowerShellでできるんだろうかと思って調べたら
>mkdir /?
ディレクトリを作成します。
MKDIR [ドライブ:]パス
MD [ドライブ:]パス
コマンド拡張機能を有効にすると、MKDIR は次のように変更されます:
MKDIR は、必要に応じてパスの中間ディレクトリを作成します。
たとえば、\a が存在しない場合、
mkdir \a\b\c\d
は、次と同じです:
mkdir \a
chdir \a
mkdir b
chdir b
mkdir c
chdir c
mkdir d
拡張機能が無効な場合は、上のように入力します。
問題なくできるようだ (PowerShellも同様)。
戦場は荒野
テレ玉での今週の放送分。 これも劇場版では削られたエピソードだけど、 こういうのが入る・入らないで作品全体のイメージも結構変わるよねえ…
#この故郷を目指す母親の絶望が分かる人
— miakesan(高知) (@miakesan) June 30, 2017
「奥さん!」「は、はい」
「ここが一年前迄セントアンジェのあった所です。奥さんは、湖の仲間の所にお帰りになった方が良いでしょう」
「えぇっ!ここが…、ここが…セントアンジェ…」
「…コーリー…」「ママ…」 pic.twitter.com/uODdXUSNVq
東京駅記念Suica
東京駅記念Suica「失効」に注意 期限は26年3月 使えば延長:朝日新聞デジタル
そう言えば自分も持っていたなこれ。
BASIC
Relational operator - Wikipedia
BASIC, ML, Pascal[note 3] = <>[note 4] > < >= <=
で、note4をみると
Modula-2 also recognizes #
実際のところ、比較演算子で’><‘や#
が使えたBASICって
どのくらいあったのだろう?
新刊近刊
現場ですぐに使える! 最新R言語プログラミング逆引き大全323の極意
出版社のページをみると 新旧両方で全項目が載っていたので 比較してみた。 単純に数が減ったというのではなさそう。
現場ですぐに使える! 最新R言語プログラミング逆引き大全323の極意 - 秀和システム あなたの学びをサポート!
第1章 開発環境の用意とRプログラミングの基礎 1-1 Rで開発するための開発環境の用意 001 Rとは何か コラム R言語 コラム データマイニング 002 RStudioとは 003 Rをインストールする ... 12-3 複数のグラフの描画 321 2つのグラフを横に並べて表示する 322 データセットのすべてのヒストグラムを1画面に表示する 323 3Dの散布図を作成する
現場ですぐに使える! R言語プログラミング逆引き大全 350の極意 - 秀和システム あなたの学びをサポート!
349 正規Q-Qプロットを作成する 350 多項式回帰で分析する
インターフェース
Interface 7月号(明日発売)第4部では,C言語の最新仕様C11について,C99のおさらい,C11およびC17で追加変更された仕様,C23との関係を解説します.また,GitLabについて,GitHubとの比較を含めた解説を行います. pic.twitter.com/LvKpQqL3Sg
— コンピュータ技術実験雑誌「Interface」(毎月25日発売,CQ出版社) (@If_CQ) May 23, 2024
Interface(インターフェース) 2024年 7 月号 | Interface編集部
◎C99のおさらい/C11およびC17で追加変更された仕様/C23との関係/C++との関係
●第1章 今やC言語と言えばこれ!C11入門
「最新仕様C11」はどうなの?と思ったけど、 記事には理由というか言い訳?が書いてあった(あまり納得のいくものではなかったけど)。 それと、Linuxのカーネルビルドに使うのをC89から変えた先ってC11だっけ?
- Linux Kernel Moving Ahead With Going From C89 To C11 Code - Phoronix
- トーバルズ氏、Linuxカーネルを「C89」から「C11」コードに移行する準備 - ZDNET Japan
やっぱそうだった。 であれば「今やC言語と言えばこれ!C11」という表現もまあ
11と言えばC++の方でも
この記事で使っているC++がC++11だったりして漂うもやもや
本記事のサンプルコードは、以下の環境で動作を確認しています。
macOS Sonoma/Windows 11 Xcode Command Line Tools 2395 MinGW GCC 9.2.0
本当に最近書かれた記事なのか日付を確かめてしまった
関数型ドメインモデリング
「関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう」- KADOKAWA
[B! book] 関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう
t-wada 『Domain Modeling Made Functional』の翻訳がとうとう出ます! 出版に向けて企画段階からいろいろお手伝いさせていただいた思い出深い本です。 この本は、これからの必読書のひとつになるだろうと考えています。
なんか気になったので原著は?と調べてみたら pragprogの本だった。
Pages: 310
Published: January 2018
うーむ記憶にないなあ… あるいは「Domain Modeling」で興味から外れたのかもしれない。
日経ソフトウエア
awk
FORTRAN Compiler on IBM 704
FortranはFortranでもFORTRAN IIなどについてではない話。
プログラミング言語人気ランキング、Fortranが10位入り | TECH+(テックプラス)
Fortranが再び注目されている主な理由として、数値・数学計算の重要性が増していることが挙げられている。 多くの競合するプログラミング言語が存在する中、Fortranは高速なネイティブ数学計算をサポートし、 成熟しており無料で利用できる点が強みと分析されている。
「高速なネイティブ数学計算」というのがよくわからんなあ ということで原文を見てみた(来月分が発表されたら読めなくなるのかなこれ)
The main reason for Fortran’s resurrection is the growing importance of numerical/mathematical computing. Despite lots of competitors in this field, Fortran has its reason for existence. Let’s briefly check the competition out. (中略) Fortran appears to be fast, having native mathematical computation support, mature, and free of charge. Silently, slowly but surely, Fortran gains ground. It is surprising but undeniable.
native mathematical computation
…そのままか。
やっぱりよくわからん
Things to avoid in Ruby
f-string
ふと、Pythonのf-stringsの処理の「裏側」はどうなっているのか 気になったのでソースコードをざっと追いかけてみた。
Grammer/python.gram
fstring_replacement_field[expr_ty]:
| '{' a=(yield_expr | star_expressions) debug_expr='='? conversion=[fstring_conversion] format=[fstring_full_format_spec] rbrace='}' {
_PyPegen_formatted_value(p, a, debug_expr, conversion, format, rbrace, EXTRA) }
| invalid_replacement_field
Parser/parser.c
// fstring_middle: fstring_replacement_field | FSTRING_MIDDLE
// fstring_replacement_field:
// | '{' (yield_expr | star_expressions) '='? fstring_conversion? fstring_full_format_spec? '}'
// | invalid_replacement_field
static expr_ty
fstring_replacement_field_rule(Parser *p)
{
if (p->level++ == MAXSTACK) {
_Pypegen_stack_overflow(p);
}
if (p->error_indicator) {
p->level--;
return NULL;
}
expr_ty _res = NULL;
int _mark = p->mark;
if (p->mark == p->fill && _PyPegen_fill_token(p) < 0) {
p->error_indicator = 1;
p->level--;
return NULL;
}
int _start_lineno = p->tokens[_mark]->lineno;
UNUSED(_start_lineno); // Only used by EXTRA macro
int _start_col_offset = p->tokens[_mark]->col_offset;
UNUSED(_start_col_offset); // Only used by EXTRA macro
{ // '{' (yield_expr | star_expressions) '='? fstring_conversion? fstring_full_format_spec? '}'
if (p->error_indicator) {
p->level--;
return NULL;
}
D(fprintf(stderr, "%*c> fstring_replacement_field[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{' (yield_expr | star_expressions) '='? fstring_conversion? fstring_full_format_spec? '}'"));
Token * _literal;
void *a;
void *conversion;
void *debug_expr;
void *format;
Token * rbrace;
if (
(_literal = _PyPegen_expect_token(p, 25)) // token='{'
&&
(a = _tmp_112_rule(p)) // yield_expr | star_expressions
&&
(debug_expr = _PyPegen_expect_token(p, 22), !p->error_indicator) // '='?
&&
(conversion = fstring_conversion_rule(p), !p->error_indicator) // fstring_conversion?
&&
(format = fstring_full_format_spec_rule(p), !p->error_indicator) // fstring_full_format_spec?
&&
(rbrace = _PyPegen_expect_token(p, 26)) // token='}'
)
{
D(fprintf(stderr, "%*c+ fstring_replacement_field[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{' (yield_expr | star_expressions) '='? fstring_conversion? fstring_full_format_spec? '}'"));
Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
if (_token == NULL) {
p->level--;
return NULL;
}
int _end_lineno = _token->end_lineno;
UNUSED(_end_lineno); // Only used by EXTRA macro
int _end_col_offset = _token->end_col_offset;
UNUSED(_end_col_offset); // Only used by EXTRA macro
_res = _PyPegen_formatted_value ( p , a , debug_expr , conversion , format , rbrace , EXTRA );
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
p->level--;
return NULL;
}
goto done;
}
Parser/action_helper.c
expr_ty _PyPegen_formatted_value(Parser *p, expr_ty expression, Token *debug, ResultTokenWithMetadata *conversion,
ResultTokenWithMetadata *format, Token *closing_brace, int lineno, int col_offset,
int end_lineno, int end_col_offset, PyArena *arena) {
実際に文字列化しているのはたぶん
_PyPegen_formatted_value
東芝未来科学館
いつも東芝未来科学館をご愛顧頂いている皆様へ
— 東芝未来科学館【公式】/Toshiba Science Museum (@toshiba_m_kakan) May 25, 2024
発表にもありました通り、東芝未来科学館は6月29日(土)をもって一般のお客様への公開を終了する事となりました。
1961年に「東芝科学館」として誕生してから63年間多くの方に足を運んで頂き、東芝の素晴らしさや科学の面白さを伝える事ができました。
今の勤め先の割と近くにあるんだけど、行けそうで行けなかったんだよねえ。 会社帰りでは開館時間内に間に合わないし