Erlangにはこの興味深い機能が欠けている場合があるため、この機能を手に入れたかったのです。
インターネットを検索した後、私は
記事に出会いました。
著者は、引数をデコレータに渡すことを除いて、ほぼすべての機能を実装しました。
すぐにGithubへの
リンクを提供して
ください 。
だから、私のプロジェクトの違い-デコレータ
はパラメータと
詳細オプションの
プレフィックスを付けることができます。これにより、関数名とファイル内の行を持つタプルが3番目の引数でデコレータに渡されます。
これらの機能の両方を使用する使用例(確かに本番ではありませんが、本質は明らかです)。
-module(memoize).
さて、2つの呼び出しのテスト:
>> timer:tc(memoize,fact,[1000]). {1282, ... }. >> timer:tc(memoize,fact,[1000]). {9, ... }.
つまり 成長が顕著です:)
これが必要であるかどうかに関係なく、トピックでホリバーを繁殖させたくありません。それが便利になれば嬉しいです...
PS誰かが興味を持っている場合-parse_transformを使用してコード生成のプロセス全体をさらに詳しく説明できます...