2008-05-01から1ヶ月間の記事一覧

int OP double を double で演算するパッチ

HSP では int OP double が int で演算され、 たとえば 100 * 0.9 で 0 が返ってきたりするのが HSP の不満ポイントの一つなんですが。 int OP double を double で演算するパッチを作ってみました。 Index: hsp3code.cpp =================================…

hsp-users.jp とったよ

hsp-users.jp - 日本のHSPユーザのためのハブサイト

Cのunix向けのディレクトリ関連関数をすこし試す

#include <limits.h> #include <stdlib.h> #include <unistd.h> #include <stdio.h> int main() { char path[PATH_MAX]; printf("PATH_MAX = %d\n", PATH_MAX); realpath("hsp31/./../openhsp", path); printf("path = '%s'\n", path); getcwd(path, PATH_MAX); printf("path = '%s'\n", path); retu</stdio.h></unistd.h></stdlib.h></limits.h>…

HSPコンパイラのSEGVを修正してコミットしました

http://dev.onionsoft.net/trac/changeset/85 色々調べてみて分かったんですけど、 Endless macro loop エラーが出なかったのは単に macloop が 1000 に達するより早く SEGV が起こっていたから。 b %1の%1がなければ落ちなかったのはただの文字数の問題。 …

HSP コンパイラの SEGV をデバッグ

せっかくの機会なので gdb を試したかったんだけど、 bcc しかない環境だったので。 まず、 bcc で OpenHSP の hspcmp をビルド。 で、問題のスクリプトを食わせる。 すると。。。SEGVで落ちたりはしないのだが無限ループでいつまでも終了しない様子。で、ど…

HSP コンパイラをSEGVさせる脅威のスクリプト

#undef mes #define mes(%1) mes %1:mes %1 mes "hoge"このスクリプトヤバい。 コンパイルしようとするとすとーんと落ちる。エディタも道連れに。 Linux版OpenHSPで試してみるとSegmentation faultと。 これはマズいので直すべき。 マクロの展開あたりのバグ…

自分のTwitter全ステータスを保存

コマンドライン引数にユーザ名とパスワードを指定すること。 #!/usr/bin/ruby -Ku require 'rexml/document' require 'net/http' require 'date' Net::HTTP.version_1_2 user, pass = ARGV hr = '-' * 100 open('twitter.txt', 'w') do |out| Net::HTTP.star…

HSPLet のコンパイラをコマンドラインから

HSP

java -jar "c:\program files\hsp31\hsplet\compiler.jar" Compiler --jar=hoge.jar --html=hoge.html --pack=hoge.ax --startClass=hoge --title="Promgram Title Here" --libdir="c:\program files\hsp31\hsplet\ext" --libdir="c:\program files\hsp31\hs…