タグ

Pythonに関するel-condorのブックマーク (11)

  • PythonでC/C++に匹敵する実行速度を実現 米MITなどコンパイラ「Codon」開発

    Innovative Tech: このコーナーでは、テクノロジーの最新研究を紹介するWebメディア「Seamless」を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。Twitter: @shiropen2 Pythonは人気な言語だが、実行速度が遅いため、速さを求められる環境になると違う言語が採用される。この研究では、Pythonのような高水準言語のシンプル性とCやC++のような低水準言語の高速性を兼ね備えることができるPythonベースのコンパイラ「Codon」を提案する。 Codonは、Pythonのコードをネイティブなマシンコードにコンパイルするコンパイラであり、シングルスレッドにおいて通常のPythonよりも10倍から100倍速く実行され、CやC++に匹敵する速度を実現できるという。またCodonではマルチスレッドも可能なため、より大きな性能向上

    PythonでC/C++に匹敵する実行速度を実現 米MITなどコンパイラ「Codon」開発
    el-condor
    el-condor 2023/03/24
    リフレクション機能がないなどから見てTrufflerubyのようなAOTコンパイラということでいいのかな。Rubyでは真のマルチスレッドになることで顕在化するライブラリのバグもあったが、同種のことはPythonでも有り得るのだろうか
  • 「IronPython 3」が登場 ~Python 3をターゲットにした初めてのIronPython/バージョンは「3.4.0-alpha1」

    「IronPython 3」が登場 ~Python 3をターゲットにした初めてのIronPython/バージョンは「3.4.0-alpha1」
    el-condor
    el-condor 2021/04/24
    お帰り感ある
  • CPU律速なRuby/Pythonコードはデフォルト設定のdocker上で遅くなる - まめめも

    English version 要約 dockerはデフォルトでセキュリティ機構(Spectre脆弱性の対策)を有効にします。この影響で、RubyPythonのようなインタプリタは速度が劣化します。特にCPU律速なプログラムで顕著に遅くなります(実行時間が倍くらいになることがあります)。 現象 Rubyで1億回ループするコードを、直接ホスト上で実行する場合と、docker上で実行する場合で実行時間を比較してみます。 直接ホスト上で実行した場合: $ ruby -ve 't = Time.now; i=0;while i<100_000_000;i+=1;end; puts "#{ Time.now - t } sec"' ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux] 1.321703922 sec docker

    CPU律速なRuby/Pythonコードはデフォルト設定のdocker上で遅くなる - まめめも
    el-condor
    el-condor 2020/05/23
    Pythonだとdockerで動いてるCPU律速なコードはボチボチありそうだよね。
  • Pythonの文字列が標準でf文字列になる(かも) - Qiita

    はじめに Python言語サミット2020が4月の15日、16日の2日間で開かれました。これはPython実装の開発者(家のCPythonに加えてPyPyなども)が集まる会議で、単にプレゼンし合う場というよりは言語体や標準ライブラリの現状や今後に関する議論をして合意を目指すという会議とのこと。 今年はコロナウイルス蔓延の影響で、ご多分に漏れずオンライン開催となったそうですが、2日間の議題を見るとなかなか興味深いものが並んでいます。 全ての文字列をf文字列にする CPythonのパーサーをPEGベースの物にする (C)Pythonの仮想マシンの形式仕様記述 実装非依存のC言語拡張API CPythonのドキュメンテーション保守の変革 ライトニングトーク pip, PyPI そしてパッケージングに今後何を求める? 「マルチコアPythonプロジェクトの失敗を振り返る Pythonの型導入

    Pythonの文字列が標準でf文字列になる(かも) - Qiita
    el-condor
    el-condor 2020/05/06
    RubistとしてはPerl Mongerの提案に賛成である(Rubyの当該機能も確かPerl由来だし)/そういえば文字列リテラルとしてはシングルクオートかダブルクオートかに違いないんでしたっけPython
  • 20 万行超のコードベースをテストせずにリファクタリングリリースした話 - MonotaRO Tech Blog

    こんにちは、鈴木です。 20 万行を超えるアプリケーションのほとんど全てのソースコードを変更し、テストを行わずに番リリースしました。 「それってテストいるんですか?」問題 いきなりですが質問です。ソースコードを 1 バイトでも変更したら再テストする必要はあるでしょうか。「絶対に再テストすべき」という方もいれば、「状況によるしケースバイケースかな・・」という方もいらっしゃると思います。 ケースバイケースと考える方は、どのような場合にテストを行わなくて良いと考えるでしょうか。例えば、コメント内の誤字を修正した場合はどうでしょうか。ローカル変数の名前を typo していたので修正した場合、デッドコードを削除した場合はどうでしょうか。 こんなことがありました ある日、Python のソースコードを眺めていると、「# $Id」のような CVS 時代のコメントがありました。いまやソースコードは Gi

    20 万行超のコードベースをテストせずにリファクタリングリリースした話 - MonotaRO Tech Blog
    el-condor
    el-condor 2018/10/05
    良いのでは。Pythonでは変数名変更してもAST変わらないという知見を得た(Rubyでは変わるかな)
  • Apple、macOS 10.14 MojaveにもPython v2.7.10を同梱?

    記事内に広告が含まれています。This article contains advertisements. ApplemacOS 10.14 Mojave betaにPython v2.7.10を同梱しているそうです。詳細は以下から。 Appleは現地時間2018年06月04日、米カリフォルニア州サンノゼのマッケナリー・コンベンションセンターで「WWDC 2018」の基調講演を行い、次期macOS 10.14 Mojaveの1st Betaを開発者向けに公開しましたが、同バージョンでもデフォルトで同梱されているPythonのバージョンがv2.7.10のままアップデートされていないそうです。 Default ruby installed on Mojave is 2.3.6: pic.twitter.com/Zg4RkjW3ck — Amir Rajan (@amirrajan) 2018年

    Apple、macOS 10.14 MojaveにもPython v2.7.10を同梱?
    el-condor
    el-condor 2018/06/13
    Python界の事情はよく知らないので識者的にこれどうなのか聞いてみたい
  • クラスブロックのひみつ - atsuoishimoto's diary

    さて、 リスト内包のひみつ - atsuoishimoto's diary で、Python3では、リスト内包式は関数呼び出しとなることを説明した。 >>> a = [i*2 for i in range(3)] というスクリプトは、次のように展開される。 >>> def _listcomp(_it): ... ret = [] ... for i in it: ... ret.append(i*2) ... return ret ... >>> _it = range(3) >>> a = _listcomp(it) 通常、この点はあまり気にする必要はないが、問題となるケースもなくはない。 クラスブロックのリスト内包 クラスブロックで次の処理を実行してみよう。 class Foo: NUMS = [i*2 for i in range(3)] まあ、これは当然動作する。Foo.NUMS

    クラスブロックのひみつ - atsuoishimoto's diary
    el-condor
    el-condor 2018/01/29
    rubyの感覚で使うとハマりそうなやつだ
  • ExcelにPython搭載、マイクロソフトが検討。アンケートを実施中

    Excelユーザーの要望をとりまとめるサイトで、ExcelへのPython搭載の要望が相次いだ。その結果、マイクロソフトは検討のためのアンケートを開始した。 Excelは業務アプリケーションとしてもっとも使われ、普及している製品のひとつでしょう。そのExcelを今後も発展させていくために、マイクロソフトはユーザーが要望を提案できるコミュニティサイト「Excel’s Suggestion Box」(英語)を公開しています。 このコミュニティサイトに2015年11月、Excelのスクリプティング言語としてPythonを搭載してほしいという要望「Python as an Excel scripting language」がポストされました。 それから2年以上が経過し、現時点でこの要望は2位以下を大きく引き離す3862票の賛成票(2017年12月17日現在)を獲得して要望リストのトップにあがってい

    ExcelにPython搭載、マイクロソフトが検討。アンケートを実施中
    el-condor
    el-condor 2017/12/18
    どう実装されるかが興味深い。PTVS的なものになるのかねえ。
  • Island Life - GC切って性能向上

    About 南の島のプログラマ。 たまに役者。 Practical Schemeの主。 WiLiKi:Shiro 最近のエントリ 米国の大学進学無限cxr高校受験Defense振り返ってみると2019年は色々学んで楽...覚えるより忘れる方が難しい(こともある)眼鏡のつると3DプリンタIris Klein Acting ClassSAG-AFTRA conservatory: Voice Acting創作活動って自分を晒け出さねばならないと...More... 最近のコメント shiro on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/14)1357 on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/01)ベアトリーチェ on ハイポハイポハイポのシューリンガン (2022/04/02)ベアトリーチェ on ハイポハ

    Island Life - GC切って性能向上
    el-condor
    el-condor 2017/02/22
    これ正に、Rubyが数年前に通った道ですよね。ちょっと前にはPerlでも同じような話題を聞いたような。
  • PythonからRubyに移行した人間の印象 - Line 1: Error: Invalid Blog('by Esehara' )

    今日の料理 安物のねぎとろは、納豆と良くあう。 前提 はじめてのにき(2016-06-16) より。 このエントリの立ち位置について 元々はPythonを勉強していたのだけれども、仕事の関係上、Rubyを主軸にすることにした人間のエントリです。ちなみに、PythonRubyの立ち位置には詳しくなく、主観を元に構成されているので、客観的な部分に関しては弱いことをお断りしておく。また、現時点での知識が2.7になっているので、3.5では多少違う点があるかもしれない。 なぜならPythonのほうが「わかりやすかった」から まず最初に、Pythonのほうが機械科学系の人に支持されやすい傾向としてあるのは、Pythonのライブラリ、例えばNumpyであったり、Scipy、または各種機械学習系のライブラリなどの影響が大きいのは間違いない。最近の機械学習ブームのせいなのか、Pythonも「エモい人(エモ

    PythonからRubyに移行した人間の印象 - Line 1: Error: Invalid Blog('by Esehara' )
    el-condor
    el-condor 2016/06/17
    意図の表現と実装の表現、どちらに向いているか、という話だと理解しておけば良いのだろうか。
  • 遺伝的アルゴリズムでFX自動売買 その3 OandaAPIで実際に取引 - Qiita

    前回の記事 pythonと遺伝的アルゴリズムで作るFX自動売買システム その1 遺伝的アルゴリズムでFX自動売買 その2 進化する売買AIの実装 今回作るモノ 自動売買システムを作ったときに使ったOandaAPIの紹介と、売買注文の発注機能について書いていこうと思います。 自動売買で使ったOandaAPI 5種類のAPIを使って構築しました。詳細はOandaのAPIDocument参照 OAuth2のTokenは、口座開いてログインするとWebで発行できます。 トークンはcurlコマンドHeaderのAuthorization: Bearer ********に設定します。 """ 01.アカウント情報API curl -H "Authorization: Bearer ********" https://api- fxtrade.oanda.com/v1/accounts/12345 "

    遺伝的アルゴリズムでFX自動売買 その3 OandaAPIで実際に取引 - Qiita
  • 1