問題タブ [haste]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
375 参照

haskell - Raycaster はファントム垂直壁面を表示します

出力は次のようになります。

片側に平らで連続した赤い壁、反対側に青い壁、反対側に緑色、反対側に黄色の壁が見えるはずです (マップの定義を参照してくださいtestMapTiles。これは 4 つの壁があるマップです)。しかし、実際の壁に垂直な、さまざまな高さのこれらの幻の壁面があります。なんで?

白い「ギャップ」は実際にはギャップではないことに注意してください: 高さInfinity(距離 0) の壁を描画しようとしています。特にそれを考慮して (このバージョンのコードでは考慮していません)、画面の高さでキャップすると、そこに非常に高い壁が表示されます。

ソースコードは以下です。Hasteを使用して JavaScript にコンパイルし、canvas にレンダリングする、単純な Haskellです。これは、このチュートリアルの C++ コードに基づいていますが、 andmapXmapYandtileXに置き換えたことに注意してください。C++ コードとの不一致は、おそらくすべてを壊している原因ですが、このコードを何度も調べた後、何も見つけられないようです。tileYrayposdir

何か助けはありますか?

HTML ページ:

0 投票する
1 に答える
119 参照

haskell - Haste の StateT モナドのインターバル関数を書く

StateTトランスフォーマーを Haste で正しくコンパイルできなかったため、独自の実装を作成しました。setInterval私の状態モナド内でjavascriptを動かしたかったと思います。への ffi 呼び出しは次のとおりsetIntervalです。

mに渡された後に backの結果を取得する方法は考えられませんでしたjsInterval。ということで使ってみましたIORefs

元の状態を維持しているため、これは機能しませんでした。書き込みの前に読み取りが行われました。IORefそのため、が書き込まれるまでループでポーリングする関数を作成しましたが、これは永遠にハングアップしました。

この機能を実装することは可能ですか?MonadEventforのインスタンスを書き込もうとしましStateTたが、それも失敗しました。

0 投票する
2 に答える
1314 参照

haskell - Ghcjs、Haste、Elmなどを使用してHaskellフロントエンドをサーバー側でレンダリングすることは可能ですか?

Haskell は素晴らしい機能を提供すると思います。Web 開発にも適しています。ただし、私が見逃している機能が 1 つあります。サーバー側のレンダリング。その理由は、Google のインデックス クローラーと、モバイル デバイスでのパフォーマンスを向上させるための事前レンダリングです。

Ghcjs、Haste、Elm、または他の Haskell->JS コンパイラを使用してサーバー側で Haskell フロントエンドをレンダリングすることは可能ですか?

0 投票する
2 に答える
808 参照

haskell - スタックでhaste / hplaygroundを使用する方法

言語である Haskell にはある程度の知識がありますが、ツールチェーンにはあまり詳しくありません。(cabal と stack が存在する前に Haskell をいじってみました。) Haskell プロジェクトを管理するために使用すべきツールは stack だと言われました。ヘイスト ライブラリを学習しようとしていますが、hplayground をインストールできないため、最初に試したチュートリアルで苦労しています。スタック プロジェクトを作成しました。私のstack.yamlには

私の.cabalファイルには、ビルド依存にリストされているhplaygroundがあります。しかし、スタック ビルドを実行すると、次のエラーが発生します。

と同様のエラーがたくさんあります。私が間違っていることについて何か考えはありますか?

より広い意味で: Haskell ツールチェーンの経験がない人が急いで立ち上げて実行するための迅速で簡単な方法は何ですか?

0 投票する
0 に答える
190 参照

haskell - cabalを使用してhaste-compilerをインストールする方法

cabalを使用してhaste-compilerをインストールしようとしています..インストールは問題ありませんでしたが、コマンド「haste boot」を実行するとエラーが発生しました:ここに画像の説明を入力

誰でもこのエラーを修正する方法を知っていますか? ありがとう。

0 投票する
2 に答える
79 参照

haskell - Haste でのローカル ストレージの操作

ローカル ストレージとの間で整数を読み書きしたいと考えています。

私のコードは次のようになります(これまでのところ、これをコンパイルしようとしています):

しかし、私は得る:

質問は次のとおりです。

このコードをコンパイルするにはどうすればよいですか?

整数を読み書きするにはどうすればよいですか?

0 投票する
1 に答える
424 参照

haskell - Haste をスタック ツール チェーンに統合する

私はプロジェクトにHaskell Stackを使用しており、 Hasteを含めてクライアント側のロジックをコンパイルしたいと考えています。Stack が環境間のさまざまなビルドとインストールの問題を抽象化し、自分のマシンでビルドすると、他のマシンでもビルドされるという事実が気に入っています。

Haste をスタック ツール チェーンに統合するにはどうすればよいですか? 1 回限りのセットアップで問題はありませんが、コードが新しいシステムに移行するたびにツール チェーン全体を再作成する必要はありません。

0 投票する
1 に答える
145 参照

haste - haskellソースファイルから急いで.jsファイルを生成する方法は?

それで、この質問に答えているときに、質問をした人が JavaScript 開発者のように見えることに気付きました。Haskell で書いたコードは簡単なので、急いで JavaScript にコンパイルしてみようと思いました。

それで、速攻の Windows バイナリ パッケージをダウンロードし (なぜ .msi には再起動が必要なのですか?!!?)、それをパスに追加して発行haste-cabal updatehaste-cabal install split、 の出力を少し読んだ後、次のhastec --helpように発行しました。

PS E:\h\stackoverflow> hastec -o hexagon.js --pretty-print hexagon.hs
私が探している出力を取得する方法についての私の最善の推測として。

私の予想とは反対に、速攻の出力は次のとおりです。

hastec.exe: user error (shell expression failed in readModule: Data.Binary.Get.runGet at position 8: not enough bytes)

それで、私の質問: Java スクリプトのソース ファイルを取得するにはどうすればよいですか?

0 投票する
1 に答える
77 参照

html - キャンバスにグラフを正しく表示させる

グラフ計算機を作成して、グラフを「キャンバス」に正しく表示しようとしています。HTML ファイルを読み込んで x と書くと、たとえば、左上隅から始まり、右下隅に下がっていきます。問題は、グラフが上下逆さまに表示され、負の値が含まれていないことです。キャンバスは左上隅のピクセル値で (0,0) から始まり、右下隅の (300,300) で終わることがわかっています。このリンクから緑のキャンバスのようなものを表示したい: http://www.cse.chalmers.se/edu/course/TDA555/lab4.html