linalg: export numeric constants
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- fortran
- 領域
- backend
調査の方向性
The issue gives no implementation files or tests; start by reading the numeric constant definitions and the linear algebra code that uses them, then compare the existing codata API and prior work in #800 and #902. Decide how constants should be exported for both users and fypp-generated routines, and document the chosen API and generated values; the issue does not specify tests.
索引モデルが issue の本文から書いたものです。
説明
Motivation
As pointed out in #902, it is often tedious to read through templated numeric constants through the code.
Prior Art
#800
Additional Information
- For the user API, maybe all needed is a consistent way to export them? One way this is present in stdlib (
codatamodule) is to use amoldparameter and function. - For development (linear algebra routines will be easier to read), maybe the best approach would be to template them directly in fypp? this works well:
#! Return the unitary numeric constant for a given type and kind
#!
#! Args:
#! type (string): an intrinsic type (complex, real, integer)
#!
#! Returns:
#! Parameter value string
#!
#! E.g.,
#! one('complex(dp)') -> (1.0_dp, 0.0_dp)
#! one('real(sp)') -> 1.0_sp
#! one('integer') -> 1
#!
#:def one(type)
#:assert 'integer' in type or 'real' in type or 'complex' in type
#:if '(' in type and ')' in type
#:set kind="_" + type.split('(')[1].split(')')[0]
#:else
#:set kind=""
#:endif
#:if 'integer' in type
${"1"+kind}$
#:elif 'real' in type
${"1.0"+kind}$
#:elif 'complex' in type
${"(1.0"+kind+",0.0"+kind+')'}$
#:endif
#:enddef
- 主要言語
- Fortran
- スター
- 1.4k
- フォーク
- 233
- 平均マージ
- 3日 6時間
- マージ済み PR(30日)
- 5
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
fortran-lang/stdlib のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
fortran-lang/stdlib#1193 · コメント 5 件 ·
-
Cannot compile example_mnorm.f90対応中かも @Chaitanya-970 が 1 日前に担当しました。 オープンbug
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
fortran-lang/stdlib#1224 · コメント 4 件 ·
-
LAPACK upgradesオープンidea topic: linalg
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
fortran-lang/stdlib#1199 · リアクション 1 件 ·
-
idea
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
fortran-lang/stdlib#1181 · コメント 2 件 · リアクション 1 件 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 49/100
fortran-lang/stdlib#1178 · コメント 3 件 ·
fortran-lang/stdlib の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
Slaymish/HealthAgent#7 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
loopj/aiovantage#414 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
メンテナーはふだん 1 日以内に返信
-
known issue
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
bug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
CakeRepository/agentshangout#38 ·
メンテナーはふだん 1 日以内に返信