2008年9月アーカイブ

送られてきたVB.netサンプルコード

Public Function hoge() As Integer
  On Error GoTo Err_Function

  ' 処理
  If 途中で抜ける条件 Then
    GoTo Exit_Function
  End If
  If 何かエラー Then
    GoTo Err_Function
  End If

  hoge = S_OK

Exit_Function:
  ' 終了処理
  Exit Function

Err_Function:
  ' エラー処理
  hoge = S_ERR
  Goto Exit_Function

End Function

※ S_OK とか S_ERR ってのは「正常/異常を表す定数」です。0 と -1 です。それ以外の値は返りません

効率の良い資源運用を目指すべく、 travian FAQ を見つつ作ってみました。

(探してないけど)他に誰かがもっといいの作ってそうだし、
めんどくさいので特に解説も書いたりしませんが、
よろしければどうぞ

trav.html

  1. 2008-09-29 朝追記: 一部ブラウザが <select /> を理解しないようなので、 <select></select> に修正。

今度手伝うことになった仕事は、2008年9月という現在において

  • VB.net on VS2003
  • MS SQLServer Developer Edition 2000 SP4
  • .NET Framework 1.1

が、指定開発環境だそうです。

...

割とシャレにならない程度のシチュエーションをねこみみカチューシャで緩和

しきれないっ

たくしage 2 version

他人 の嫁を描いてみるテスト

トップページ のはぼの跡地にも設置してみました。

ネタ元

まず、ふつーに、Cコンパイラの-Iオプションの如く、 -I <path> -I <path> とかやって複数の値を設定するのは下記でできます。

#include <vector>
#include <string>
#include <iostream>
#include <algorithm>
#include <iterator>
#include <boost/program_options/options_description.hpp>
#include <boost/program_options/parsers.hpp>
#include <boost/program_options/variables_map.hpp>

int main(int c, char** v)
{
  try {
    namespace po = boost::program_options;

    po::options_description desc("Options");
    desc.add_options()
      ("include,I",  po::value< std::vector<std::string> >(), "include paths")
      ;

    po::variables_map vm;
    po::store(po::parse_command_line(c, v, desc), vm);
    po::notify(vm);    

   if (vm.count("include")) {
      const std::vector< std::string >& v = vm["include"].as< std::vector< std::string > >();
      std::copy(v.begin(),v.end(),std::ostream_iterator<std::string>(std::cout, ", "));
    }

    return 0;
  } catch ( const std::exception& e ) {
    std::cerr << e.what() << "\n";
    return -1;
  }
}

./exec -I a -I b で a, b が得られます。

こういうバカバカしいのは割りと好きだったりします。

「はふぅ」

fork と thread の話 の続き。

とりあえず、Expect に関しては、 threadが走ってないときにExpectを利用することは可能でした。即ち、

use threads;
use Expect;

my $thr = threads->create(\&parallel);
my $exp = Expect->spawn(...);
# 何とかかんとか
$thr->join;

sub parallel { sleep 5; }

はダメだけど、

use threads;
use Expect;

threads->create(\&parallel)->join;
my $exp = Expect->spawn(...);
# 何とかかんとか
threads->create(\&parallel)->join;

sub parallel { sleep 5; }

は問題なく動く。もちろん複数thread でもokで、ちゃんと全子threadがjoinされた状態であればforkはまともに動くらしい。

ちなみに ActivePerl のfork はthreadで実装されているらしいので、元々大丈夫だったかもしれない。(しかしExpectは入らない..

ネタ元:笑顔がいっぱい

↑を見てついつい anarchy golf

#include<iostream>
#define P std::cout<<p+"\n"
main(){std::string p=":\n:-";P;p=":-)";P;while((p+="))").size()<66)P;}

ちなみに ↑ 投稿時の結果が ↓ です。

RankUserSizeTimeDateStatistics
5turugina1180.093308/09/04 19:15:200B / 62B / 50B

1位の人のサイズが97とか、すごく気になる...

twitter で三項演算子の話が出てたんで、なんとなく5.10以前のperl流switch-case の3項演算子版を書いてみる、

use encoding q/utf8/, Filter => 1;
$_ = 君がいた季節();
my $season = /Spring/i          ? 0 :
             /Summer/i          ? 1 :
             /(?:Autumn|Fall)/i ? 2 :
             /Winter/i          ? 3 : die "unkown season";

大体こんな感じ。 "?" を縦に並べると視認性もup

  1. ログイン先の /etc/ssh/sshd_config で RSAAuthentication yes になってることを確認する。
    1. なってなかったら 変更してsshdを再起動
  2. ssh-keygen で鍵つくる
  3. ~/.ssh/id_rsa.pub をログイン先の ~/.ssh/authorized_keys に追加する
    1. ログイン先の~/.ssh/authorized_keys のパーミッションは 600
  4. eval `ssh-agent`
  5. ssh-add (Passphrase設定してたらここで聞かれる)
  6. sshなり、sloginなりでログインして作業
  7. 作業が終わったら
    1. eval `ssh-agent -k`

fork と thread も混ぜちゃだめらしい。

threadで並行して Expectでリモートコマンド発行とかやってみたんだけど、Expectが内部でforkを使うらしく、うまく動作しませんでした。

threadで並行させたかったら、通信モジュール(Net::TelnetとかNet::SSHとか)を直に弄れってことですね。

use threadsuse encoding を混ぜるとダメらしい。

use threads;
use encoding q/utf8/、STDOUT => q/utf8/;
sub test{print"日本語";}
threads->create(\&test)->join;

とかがセグメンテーション違反で落ちます。

encoding のPODには threadと一緒に使うな、って書いてありますね。

use encoding じゃなくて use Encode して encode/decode する分には問題ないので、それで回避しましょう。

pixiv転載2個

pixiv に投稿したやつの色味調整版。

コメントで、「法被にスパッツだったらいるかも」って言われて初めて、以前そんな感じの絵を描いていた事を思い出しました。

帰ってblogに書くまでがLLです。

というわけで、もう既にイベント終了から40時間余り経ってしまってますが、llfuture に行ってきたので、簡単に感想など。あまり参考にはならないのでご注意。

なんか、公式がトラックバックくれって言ってるのでやっておこう。

AUTHOR

  • turugina (虎王 剱奈)
  • E-mail: turugina {at} floralcompany.jp
  • pixiv
  • ニジエ

2014年5月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

アーカイブ

OpenID対応しています OpenIDについて
Powered by Movable Type 5.2.10

- 警 告 -

本サイトにはいわゆる「18禁画像」(イラスト)へのリンクが存在します。 未成年の方や、その手の画像に不快感を覚える方は、 該当記事(「えちぃの」及び「ちょっとえちぃの」カテゴリ) をご覧にならないようお願いいたします。

上記を理解した上で非表示のブログパーツを表示する
あわせて読みたいブログパーツ
ついった
drawr/pixiv/twitpic