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.
Functional programming often gets criticized as being slow, so I wanted to present an example where it is in fact several times faster than the equivalent imperative code1. The problem is to count the lengths of Collatz sequences, which you may remember from here. In Rust, this is straightforward: fn modular(a: i64, b: i64) -> i64 { ((a % b) + b) % b } pub fn collatz_length(mut i: i64) -> i64 { le
Table of contents Motivation The c2ats utility How to use it? Future plan Motivation Today, we are choosing the Bohai iteration which means rewriting NetBSD kernel using ATS language. On the iteration, we should choose some C language function and rewrite it little by little. But in many cases, the function depends on many C language interfaces, which are needed to be imported into ATS code. After
The document discusses the ATS programming language. ATS is presented as a safer alternative to C for systems programming due to its use of dependent types, linear types, and optional garbage collection. It can be compiled to run without a runtime on baremetal systems like an Arduino. The author is looking to spread awareness and use of ATS in Japan by starting a user group and showcasing its use
ATSは何に向いているのか ATSは現実的なプログラミングの正確さを強化できます。 ATSは改良に基づくソフトウェア開発を促進します。 ATSでは効率的な関数型プログラミングをすることができます。 にもかかわらず生のアンボックス化されたデータ表現を直接操作できます。 ATSの線形型を使うことでプログラムのメモリのフットプリントを削減できます。 ATSでは証明器を使うことでプログラマがプログラムの安全性と効率を向上させることができます。 ATSを使えばOSのkernelのような低レイヤーのコードを安全に書くことができます。 ATSは型理論を教えたり、高品質なソフトウェアを構築する際の型の力と可能性を教えるのを助けます。 ATSの学習に際しての提案 ATSは (C++のように) 機能豊富です。 MLをベースにした関数型プログラミングとC言語をベースにした命令型プログラミングの知識はATSの学習
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く