はてブログ

はてなブックマーク新着エントリーの過去ログサイトです。



タグ 遅延評価

新着順 人気順 5 users 10 users 50 users 100 users 500 users 1000 users
 
(1 - 22 / 22件)
 

TypeScript/JavaScript Array完全攻略2024 | フューチャー技術ブログ

2024/12/05 このエントリーをはてなブックマークに追加 86 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript ジェネレーター いまどき エントリー

TypeScriptアドベントカレンダーの12/5のエントリーです。昨日は@nanasi-1さんの【TypeScript】ジェネレーターによる遅延評価でフィボナッチ数列を生成するでした。 イマドキのJavaScriptの書き方2018というのを以前書いたのだけど、配列周りはかなり変わっているな、というのを思ったので、そこの部分だけアップデート... 続きを読む

naoya on Twitter: "ChatGPT の VSCode 拡張 GPT-4 に対応していた Haskell で書かれた動的計画法のここの関数を遅延評価を使わずに STUArray 使って高速化して、と依頼した。ちゃんと動きました。(STArray

2023/03/18 このエントリーをはてなブックマークに追加 13 users Instapaper Pocket Tweet Facebook Share Evernote Clip Haskell vscode chatgpt 関数 https

ChatGPT の VSCode 拡張 GPT-4 に対応していた Haskell で書かれた動的計画法のここの関数を遅延評価を使わずに STUArray 使って高速化して、と依頼した。ちゃんと動きました。(STArray を使… https://t.co/9NkJ4uuDnA 続きを読む

JavaScript で遅延評価を導入して起動を高速化した話

2020/12/22 このエントリーをはてなブックマークに追加 20 users Instapaper Pocket Tweet Facebook Share Evernote Clip 起動 Flash Advent Calendar 現場 実現

この記事は、JavaScript で Flash Player の実現を頑張った(もしくは現在進行系で頑張っている)人たちの集う Flash Advent Calendar 2020 に参加しております。 Flash Player を JavaScript で実装していた際に、現場から「起動の高速化」という難しい要求をもらった際、「遅延評価」を導入したところ大変効果がありま... 続きを読む

続くといいな日記 – 遅延評価でデバッグが困難になる状況

2020/03/29 このエントリーをはてなブックマークに追加 13 users Instapaper Pocket Tweet Facebook Share Evernote Clip デバッグ Haskell ヘイト 日記 状況

先日、Haskell 界隈で遅延評価によってデバッグがし辛いのはどんな時かと言う話があった。見た感じ、遅延評価によってデバッグのしにくさはそんなに変わらないと言う意見が結構あり、個人的には衝撃だった。僕自身は遅延評価にだいぶヘイトを溜めてる人なので、どういう状況でデフォルト遅延評価が嫌かを実感できる問題... 続きを読む

さようなら遅延評価 - あどけない話

2019/02/15 このエントリーをはてなブックマークに追加 71 users Instapaper Pocket Tweet Facebook Share Evernote Clip あどけない話 Haskell メモリー 無限リスト 入門書

Haskellがとっつきにくい原因の一つに遅延評価がある。入門書では、無限リストと遅延評価がことさら強調される。しかし、Haskellを業務で使ってみると、遅延評価が煩わしくなってくる。遅延評価なしでもほとんどのことは実現できるし、メモリーの使用量は推測できないし、あまりいいことはない。 Haskellの評価戦略が、... 続きを読む

Proxy "it": アローすら面倒な怠惰JavaScripterのための遅延評価 - Qiita

2017/11/09 このエントリーをはてなブックマークに追加 53 users Instapaper Pocket Tweet Facebook Share Evernote Clip Proxy Qiita アロー TRIM Row

遅延評価で これ data.map(row => row.values.split(',')[2].trim().map(col => col.trim()).map(parseFloat)[2]); が こう data.map(it.values.split(',').map(it.trim()).map(parseFloat)[2]); なる はじめに 何をしたいのか JavaScriptを書... 続きを読む

Vim script でジェネレータを作ったり、遅延評価してみる - ryota-ka's blog

2016/12/08 このエントリーをはてなブックマークに追加 36 users Instapaper Pocket Tweet Facebook Share Evernote Clip ジェネレータ イテレータ ryota-ka's blog

2016 - 12 - 08 Vim script でジェネレータを作ったり、遅延評価してみる Vim Vim script ジェネレータ 遅延評価 イテレータ この記事は CAMPHOR- Advent Calendar 2016 8日目の記事です. はじめに 日本時間の2016年9月12日に, Vim 8.0 がリリースされた. Vim 7.4 のリリースからはおよそ3年振り, Vim 7.0... 続きを読む

プログラマの三大美徳の啓発の勧め : 怠惰、短気、傲慢 ― JavaScriptで遅延評価 | プログラミング | POSTD

2016/05/06 このエントリーをはてなブックマークに追加 97 users Instapaper Pocket Tweet Facebook Share Evernote Clip laziness POSTD 怠惰 コンピューティング 前者

コンピューティングにおいて、”laziness(怠惰)”は幅広い意味の単語です。大抵は、もし必要が無ければ何もしないということを意味します。正反対を指すのは”eager(勤勉)”です。後で必要になる場合に備えて働くということです。では、後者であるJavaScriptで前者のように実装するにはどうすればよいのでしょうか?larry wall 怠慢と勤勉 コンピューティングにおいて、”laziness... 続きを読む

関数型プログラミングはまず考え方から理解しよう - Qiita

2016/04/25 このエントリーをはてなブックマークに追加 583 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita モナド 高階関数 パラダイム 関数型プログラミング

関数型プログラミングが注目されて久しいです。 そろそろ勉強しておかないとなぁということで調べてみるものの、情報として出てくるのは"高階関数","カリー化","遅延評価","モナド"などの物々しい単語の数々。これらを勉強して理解した気になったものの、プログラムを書こうと思うと全然書けませんでした。 結局、関数型言語を実現する手段を学ぶ前に関数型と言われるパラダイムを理解しないことには書けません。とい... 続きを読む

JavaScriptユーザのための関数型プログラミング(後編) | プログラミング | POSTD

2016/04/13 このエントリーをはてなブックマークに追加 161 users Instapaper Pocket Tweet Facebook Share Evernote Clip POSTD WIKI postd.cc https http

この記事の前編はこちら:(http://postd.cc/functional-programming-for-javascript-people-1/) ##遅延評価 (https://ja.wikipedia.org/wiki/%E9%81%85%E5%BB%B6%E8%A9%95%E4%BE%A1)はこの記事の前編はこちら: JavaScriptユーザのための関数型プログラミング(前編) 遅... 続きを読む

Haskell - 正格評価と遅延評価(詳細編) - Qiita

2015/12/02 このエントリーをはてなブックマークに追加 23 users Instapaper Pocket Tweet Facebook Share Evernote Clip Haskell Qiita 詳細編

さて基本編に続き詳細編です。 動作を確認しながら細かく見ていきます。 Debug.Trace.trace 初めにtrace関数を導入しておきます。 こんな型の関数です。traceが評価されると、第一引数が標準エラー出力へ出力され、第二引数が返り値として返ります。 第二引数と返り値が型パラメータaで表されていることから、第二引数は何も加工されることなく返り値として返されることがわかります(それしかで... 続きを読む

Elixir - 無限リストによるエラトステネスのふるい - Qiita

2015/08/15 このエントリーをはてなブックマークに追加 45 users Instapaper Pocket Tweet Facebook Share Evernote Clip エラトステネス enum Elixir Haskell ふるい

Elixir では Stream モジュールを使って、遅延評価と無限リストを扱うことができるがそれによりエラトステネスのふるいを、Haskell と同じように無限リストを使った記述ができるか・・・というのが今回の試み。結果としては、カッとなれば、できる。 以下、Stream の解説も交えてお届けする。 Enumerable プロトコルと Enum および Stream Elixir の Enum ... 続きを読む

【長編ポエム】関数型言語が分からんお前でもPythonなら分かるやろ:第2回 関数を生成する関数はすごいよ編 - Qiita

2015/05/28 このエントリーをはてなブックマークに追加 123 users Instapaper Pocket Tweet Facebook Share Evernote Clip 高階関数 Qiita Java PHP 関数プログラミング

はじめに これは、関数型プログラミングの特徴を Python で説明した長編ポエムです。 Python を知らなくてもなんとなく分かるように書いたので、PHP や Java や JavaScript の人も読んでみてください。 【ゴール】 「なぜ関数プログラミングは重要か」という文章で重要とされている「高階関数」と「遅延評価」について理解してもらうこと (遅延評価の説明は次回) 【執筆動機】 関数... 続きを読む

Swift でジェネレータを作ったり、遅延評価してみる - 意識低い開発者のBlog

2015/05/21 このエントリーをはてなブックマークに追加 39 users Instapaper Pocket Tweet Facebook Share Evernote Clip ジェネレータ Swift Enumerator 遅延 Blog

Swift 1.2 を使ってジェネレータを作成したり, ジェネレータを使って遅延評価をしてみます. 同様のことをこれまでいくつかの言語で行っていますが, それについては以下を参照してください. これまでの流れ Ruby の Enumerator でジェネレータを作ったり、遅延評価してみる Python でジェネレータを作ったり、遅延評価してみる ECMAScript 6 でジェネレータを作ったり、... 続きを読む

JavaScript - Immutable.jsを色々触ってみました - Qiita

2015/05/18 このエントリーをはてなブックマークに追加 124 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita stack set list map

immutable.jsは、facebook社が作っているJavaScriptのライブラリでimmutableなコレクションを提供してくれます。List, Stack, Map, OrderedMap, Set, OrderedSet and Recordがあるとのこと。 関数型言語にインスパイアされて作っているらしいので、関数型に馴染みのある関数が出てきて嬉しいです。 他にも、正格でなく遅延評価... 続きを読む

faraday-lazyable - r7kamura blog

2014/02/01 このエントリーをはてなブックマークに追加 68 users Instapaper Pocket Tweet Facebook Share Evernote Clip ライブラリ HTTPリクエスト 遅延 要求 複雑性

faraday-lazyableという、 HTTPリクエストを遅延評価させるためのライブラリを作った。 遅延評価はある種の複雑性を持ち込むが、ビジネスの要求に合わせて正しく使っていきたい。 遅延評価 HTTPリクエストにおける遅延評価とは何か。 遅延評価というのは、評価しなければならない値が存在するとき、 実際の計算を値が必要になるまで行わないことをいう。 HTTPリクエストを遅延評価するというの... 続きを読む

プログラミング言語Frege(フレーゲ)を紹介します - uehaj's blog

2013/12/20 このエントリーをはてなブックマークに追加 104 users Instapaper Pocket Tweet Facebook Share Evernote Clip フレーゲ Haskell風 uehaj's blog 言語

2013-12-21 プログラミング言語Frege(フレーゲ)を紹介します haskell JVM Frege これはマイナー言語 Advent Calendar 2013の21日目の記事です。 Frege(フレーゲ)を紹介します。 Fregeは、Java VM上で動作するHaskell風の言語です。以下のような特徴を持っています。 純関数型言語 非正格評価(いわゆる遅延評価) Hindley-M... 続きを読む

関数型プログラミング言語のまとめ - ワザノバ | wazanova.jp

2013/11/04 このエントリーをはてなブックマークに追加 95 users Instapaper Pocket Tweet Facebook Share Evernote Clip wazanova.jp 関数型プログラミング言語 一連 仕様

http://funceng.com/2013/11/03/review-of-functional-languages/ Kevin Buellがブログの一連のエントリーで関数型プログラミング言語の概要をまとめています。 1) Haskell ラテン語がわかる人には親しみやすい。 [Background] 遅延評価の研究成果をとりまとめる委員会が1990年にHaskell 1.0の仕様をつくった... 続きを読む

実装して理解する遅延評価の仕組み 〜 thunkを絵に描いて理解しよう・JavaScriptでHaskellを実装!? - プログラムモグモグ

2013/02/09 このエントリーをはてなブックマークに追加 186 users Instapaper Pocket Tweet Facebook Share Evernote Clip Haskell 実装 var x プログラム コード

Haskell, JavaScriptこの記事では, Haskellに用いられる「遅延評価」の仕組みをJavaScriptのコードを用いて説明します.遅延評価とはどのように動くのか, 考えて行きましょう.HaskellのコードとJavaScriptのコードの比較Haskellでの x = y y = 10 と, JavaScriptの var x = y; var y = 10; というコードを考... 続きを読む

GHC でスタックトレース - あどけない話

2013/02/05 このエントリーをはてなブックマークに追加 35 users Instapaper Pocket Tweet Facebook Share Evernote Clip GHC スタックトレース スタック case あどけない話

Haskellこれまで GHC では、スタックトレースを取ることが有効なデバッグ方法ではなかった。なぜなら遅延評価では、(再帰であってもなくても)末尾呼び出しは単なるジャンプになるから、スタックを使わないのである。スタックに戻る場所を積むのは、case と of の中で評価される式だけだ。(つまり、ここは正格に評価される。)この問題を解決するために GHC 7.4.2 から、わざわざスタックにログ... 続きを読む

遅延評価いうなキャンペーンとかどうか - ぐるぐる〜

2013/01/01 このエントリーをはてなブックマークに追加 117 users Instapaper Pocket Tweet Facebook Share Evernote Clip キャンペーン Java 結論 言語 最初

遅延評価については以前も書いてるんですが、そのときは結論なしでした。が、ちょっと考えるところがあって、言語を Java に絞って自分の考えを明確にしておきます。結論から書きましょう。 「Java(とC#) で遅延評価って書いてあるものは遅延評価ではない」です。Java における「評価」とはまず一番最初に、Java で「評価」って言うと、どういうことを指すのかを確認しておきます。言語仕様の該当部分を... 続きを読む

遅延評価ってなんなのさ - 予定は未定Blog版

2012/03/03 このエントリーをはてなブックマークに追加 78 users Instapaper Pocket Tweet Facebook Share Evernote Clip 未定Blog版 予定 println int unit

何なんでしょうね。分かりません。自分の頭の中をとりあえず整理するためのエントリなので、あなたの頭を混乱させるだけになるかもしれません。もし混乱してしまったら忘れてください。え、無理?忘れてください。これは遅延評価ですか?関数を渡すだけ // Scala def hoge(f: Unit => Int) = for (i 1 to 2) println(f()) (* F# *) let hoge ... 続きを読む

 
(1 - 22 / 22件)