X



【M言語】キャシエ・CACHE【MUMPS】
00011垢版05/02/21 11:23:08ID:???
医療、金融、物流、製造でいまだに活躍!
古参も新参者も、さー語ってくらっしゃい。
00021垢版05/02/21 11:24:46ID:Kfxv6UfG
データベース新たな選択肢―リレーショナルがすべてじゃない
吉田 育代 (著), 梅田 正隆 (著)

価格: ¥2,310 (税込)
--------------------------------------------------------------------------------
レビュー

出版社 / 著者からの内容紹介
「速い」「軽い」「安い」
こんなデータベースがあったのか!

リレーショナル・データベース全盛時代に、
新しい選択肢を提供するスマート・データベース、
『キャシエ』の真実。

柔軟なデータ構造、高度な文字列の検索性能、
OSを選ばないマルチプラットフォーム。
医療、物流、金融など、
幅広い分野で活躍し続けるデータベース『キャシエ』。
歴史に埋もれてしまった優れたテクノロジーが、
新しい時代に蘇ってきた。
システム開発の効率化を促し、
ビジネスを自然な姿でITの世界に取り組む仕組み。
キャシエのすべてを解き明かす。

MUMPSから生まれた『キャシエ』の歴史から、
さまざまな産業界での輝かしい実績、
そして、これからの活躍の機会を、実例を交えて紹介する。

この人どっかで見たような、、、
0003NAME IS NULL垢版05/02/21 12:13:50ID:???
お仕事ですか?
学生が興味持つような品じゃないと思うよ
0004NAME IS NULL垢版05/02/21 13:20:24ID:9u3FVZID
リストアがうまくいかないのは何故?
0006NAME IS NULL垢版05/02/23 02:28:04ID:???
評価用キット(シングルユーザライセンス無償版って奴)持ってるんだけど、いまいち
使い方がよくわかんないのよね。何かクライアントサイドはWindowsしか考慮されて
ないみたいだし。言語バインディング増やす予定があるようなことを去年のセミナーでは
言ってたけど、例のスタジオとかいう環境の外から普通に使うことってできんの?
0008SCOTT/TIGER垢版05/02/26 00:02:33ID:???
誰も使ってないのか、使っている人は2chを見てないのか・・・興味はあるんだけどな。
インターシステムズの中の人でもいいから何か情報書いてよ。
0009NAME IS NULL垢版05/03/03 23:55:09ID:0QrS0ZXz
SQLより絶対使いやすい!!MUMPS・Cacheを使用していると、
なんで、世の中ではSQLがもてはやされるのかが理解できない。
周辺機器とも接続しやすいし、DBの中で、BASIC的なコマンドが使えるのが
いい。
0010NAME IS NULL垢版05/03/04 13:17:12ID:???
あげるなバカ、知ってるやつはしってるんだから。。。
0011sage垢版05/03/04 23:37:51ID:QCkP59xy
解説本が原本よりかなり安かったり
日経BPに広告打ったり
マーケティングはかなり頑張ってると思う
でも果実を取れるかどうかは。。。
0012NAME IS NULL垢版05/03/06 17:52:15ID:???
>> 9〜11
詳細レポートきぼんぬ。
0013NAME IS NULL垢版05/03/07 19:10:39ID:jgD1H//W
cacheってデフォルトではダーティーリードなんだよな。
分離レベルを上げたときの性能はどうなの?
0016NAME IS NULL垢版05/03/07 23:25:19ID:???
RDBが出始めのころ、IMS使いのベテランが「RDBは理論は綺麗かもしれないけど、
肝心のパフォーマンスが駄目だから実用的じゃないよ」と嘯いていたのを思い起こさせるな。
ま、それもひとつの真実ではあるわけだけど。
0018NAME IS NULL垢版05/03/14 23:02:05ID:???
オブジェクトデータベースCach´e入門
シュプリンガーフェアラーク東京; ISBN:4431710620; (2004/05)
をお持ちの方にお聞きしたいですが、これは
Object-Oriented Application Development Using the Cache Postrelational Database
の第2版と同じ内容ですか? 初版の内容であれば洋書第2版を購入しようかと。
0019NAME IS NULL垢版05/03/15 22:57:14ID:???
ご注意ってところに
「本書記載の情報は、第1刷制作時のものを掲載していますので、〜〜」
まえがきには
「この第2版は、〜〜」とある

第2版1刷ということで、いいんだよな。
002018垢版05/03/16 23:33:04ID:???
>>19
サンクス。何かビミョ〜に不安の残る書き方してるんですねぇ。
調べるの面倒なんで洋書第2版を注文することにします。日本語版にしか載ってない
情報とかがあったらちと残念ですが、実は初版だったってオチが一番いやだし。
0021NAME IS NULL垢版2005/03/26(土) 08:29:07ID:rtNEvCX1
なんか便利なのか?これ。
002218垢版2005/03/31(木) 23:33:44ID:???
本届いた。予想していたより薄いので気楽に読めそうです。
0023NAME IS NULL垢版2005/04/05(火) 21:57:34ID:???
これライセンスって幾らくらいなの
0024NAME IS NULL垢版NGNG
とりあえずどんなモノをつっこめてどんなクエリを掛けられるんだ?
サンプル出せやコラ。
0025NAME IS NULL垢版2005/04/07(木) 09:10:24ID:???
優れてるとか何に向くかという表現ばかりで、
何の部分が優れてて何の部分が犠牲になるのか、
全く書かれて無いね。
0026NAME IS NULL垢版2005/04/07(木) 11:26:05ID:???
Cacheを意識したオブジェクト設計をしないといけないなら
意味がない気がする。
0027NAME IS NULL垢版2005/04/07(木) 15:24:06ID:???
ヂャ、SQL使う人には必要ないんだ。
0028NAME IS NULL垢版2005/04/08(金) 01:00:50ID:???
ObjectScript、ちらっと眺めてみたけどこれ設計した奴変態だな。
よくもまあこんなに気持ち悪いデザインにしたものだ。これ使ってるユーザもある意味
尊敬する。
0029NAME IS NULL垢版2005/04/08(金) 22:31:21ID:uEi9HtjL
そのObjectScriptってのがSQLみたいなもんなの?
0030NAME IS NULL垢版2005/04/09(土) 02:12:52ID:???
「SQLみたいなもん」が何を意図して質問されてるか誤解してなければ
「全然違うモノです」と回答しておきます。オブジェクト指向のスクリプト言語で、
そこで扱うオブジェクトが永続化できるようになっているわけです。
但しシンタックスが謎・・・設計し直す予定ないのかしら。
0031NAME IS NULL垢版2005/04/09(土) 10:29:56ID:???
MUMPSをオブジェクト指向風に拡張したのがObjectScript。
設計しなおしなんていまさら。。。
0032NAME IS NULL垢版2005/04/09(土) 14:45:17ID:b+5/xJ8y
>>25
何に使われているかは、大抵の場合病院関係で、少数派は運輸倉庫系かな。
うちでは、売上管理用に使用している。
特に何に使い易いかと言われると、大抵のシステムに対応できると思う。
ただ、プログラマー人口は少ない。Mumpsは、ANSI規格にも
登録されているので心配はないと思うけど。PG人口は少ない。

0034NAME IS NULL垢版2005/04/12(火) 10:24:43ID:???
キャシェー入門届いた。
とりあえずこれで全文検索OKのBBSっぽいの作ってみる。
本当にはえーのかな?はえーといいな。
0035NAME IS NULL垢版2005/04/12(火) 14:59:00ID:???
ライセンス料金、聞いてからにしなよ。
webアプリの場合だと、いい値段になるから。
0036NAME IS NULL垢版2005/04/12(火) 16:12:41ID:???
ライセンス料金などなど
好奇心くらいしかないので
問い合わせメールとかして後から
メールだ電話だで連絡がバンバン来るようになると
いやーんなので(ほんとあの会社にゃ参った参った)
知ってる人、教えてー。
0037中野ゆかり垢版2005/04/12(火) 19:40:41ID:WIfUK7r8
趣旨に反しててごめんなさい。「園田朋子さん」もしここ読んだら連絡ください!
真剣に探してます。
0038NAME IS NULL垢版2005/04/15(金) 22:57:19ID:???
漏れもライセンス料金気になるんだけど営業が後で来るのは嫌だな。
Webアプリで使いたいんだが100万円前後くらいまでで収まるなら試したい。
そうでないならオプソのDBを頑張って使うしかない。
ライセンスどれくらいか知ってる人教えてください。
0041NAME IS NULL垢版2005/04/21(木) 10:44:26ID:???
うーむ。
tp://d.hatena.ne.jp/higayasuo/20050418#1113807275
0042NAME IS NULL垢版2005/04/25(月) 17:51:10ID:???
>1氏

吉田 育代さんは、以前○経ソフトウェアに執筆されてました。

Cache'の入門書(緑のヤツ)は、初めての人には分かりにくい気がしますね。
00431垢版2005/05/07(土) 07:11:55ID:???
>>42
そですね。何かの雑誌でもみたことあるような、、、。和服着てました。

緑本は高価で手が出ません。とりあえず、お試し版はインスコ済みなのですが、、、。
0045NAME IS NULL垢版2005/05/18(水) 17:43:32ID:???
なんかイメージ的なことばかり書かれててイヤ。
なぜ高性能か、なぜ大規模に使えるのか、が書かれてないような。
0046NAME IS NULL垢版2005/05/22(日) 19:45:41ID:8YDZ0AWO
インターシステムズ(だっけ?)の人に会社に来てもらって説明聞いたけど、
それなりにいい値段したよ。ユーザー数によってはオラクルよりも高かったはず。
まぁ、勉強するとは言ってたけど。

分離レベルが Read Uncommited なのは、オラクル教の俺からするとちょっとな。
0047NAME IS NULL垢版2005/05/23(月) 01:22:31ID:8SbtqB7t
> 46

大事なことは、値段に対する能力がその製品が持っているか、と
いうことだと思うね。
俺も以前はOracleだったけど、Oracleを知れば知るほど、金を
ドブに捨てていることがわかるね。タコな仕様の尻ふきを
設計者、管理者がやらされていることに気づく。
ユーザには「初期導入コスト」よりも管理者に支払う
「人件費」を含む運用コストの節約に視点を向けるべき。
まあ人的スキルを除いても同じコストで実現できる
能力はCache'の方が上だと思うよ。

あと、READ UNCOMMITEDは「デフォルト」なだけな。
SET TRANSACTIONすればいいだけ。

本当のオラクル教信者は、名より実を取る。
競合製品は自分で試して評価することを実践する人が
多いのだけど、はてさて。





,
0048NAME IS NULL垢版2005/05/23(月) 09:52:04ID:???
だったらRDBはオープンソースが良い。
MySQLやポスグレも良いかもしれないけど、
Firebirdが一番。
0049NAME IS NULL垢版2005/05/26(木) 18:04:10ID:???
MUMPSって調べてみたけど、非構造化言語で
サブルーチンレベルのローカル変数すらないのね…
永続化データにはスキーマもないからデータ構造も
アドホックになりがちという話。

古すぎてちょっと触りたくないな。

0050NAME IS NULL垢版2005/05/29(日) 01:06:53ID:???
> 48

Firebird となったとたんにBorland製品とのマッチが
悪くなったのと、これはOSSのDBのほとんどについて
言えるがスケーラビリティにおいてはまだ大規模には向かない。
そうじゃないというなら、これに対する反論は大歓迎。
たかだかWebサイトや小規模部門サーバのDBならともかく、
病院のような(ちょっとした問題でも起こしたら
「人殺し」とののしるような客があいて)ところに
OSSのDBを薦められる根拠があると俺も助かるから
教えてくんない?
医療業務や原子力関連など、生命にかかわるものに
関しては、O社も使用許諾書でこっそり「無保証」を言ってるからな。
それでも大丈夫な画期的方式がOSSにあるなら、しりてーなー
OSSは自己責任だから、客に任せて、、はNGね。
そんな寛大で技術的に優秀なお客さんが沢山いれば幸せだねー


> 49
マニュアルも試用版も、ベンダーサイトにある資料も
ほとんど見ないで憶測で書いてるよね。キミ。
確かにCacheはMUMPSの過去資産をほとんど利用できる互換性を
持っているけどね。
N88BASICとVS.NETぐらいの差があるっていったら理解できるかな?
この例は互換性に乏しいけどね。
005149垢版2005/05/29(日) 01:31:29ID:???
>>50
今のところCache'には興味がないんで、
MUMPSについて調べた感想を書いただけなんだが
どこか間違いあった?
0052NAME IS NULL垢版2005/05/29(日) 01:48:32ID:???
だったら「MUMPS」は触りたくない、って書けばいいのにねぇ。
厨房?
005349垢版2005/05/29(日) 02:50:38ID:???
> MUMPSって調べてみたけど、(…中略…)古すぎてちょっと触りたくないな。

って書いたんだけど、何かおかしかった?
0054NAME IS NULL垢版2005/05/29(日) 03:09:24ID:???
>>47
あんたのお勧めはなんだ?

たこな仕様ってなんだ?
0055NAME IS NULL垢版2005/05/29(日) 09:41:50ID:Xixe9HKd

古すぎるなら 古いから使わなくていいと思うものは使わなくていい
単なる食わず嫌いに過ぎない。
古いから悪いものばかりではない!!
Mumpsは古いがSQLよりも速く使いやすい。
SQLは単なる巨大なエクセルシートで検索ができるだけの
データベースにすぎない。
複雑なエクセルシートを検索するなら、スクリプトが複雑になる。
なので、マスターにおいておけば済むような情報でも、詳細情報に書き込み
れーコードを巨大化させている。新しく好い物なんだろうか??
また、vbからSQL情報を取得するには、VBのレコード定義
スクリプト作成、スクリプトのコール、取得されたレコードの読み込み
これだけの手順が最低でも必要。Cacheなら、VISM.OCXのプロパティ
で十分対応できる。複雑なDB検索が必要ならMUMPSロジックを書けば対応できる。

またサブルーチンレベルでの変数と書かれているが、実際はMUMPSでは出来るが
正解。
Newコマンドと言われるコマンドがある。
正直、MUMPSを使用していて、このコマンドは使う人は使うが、
NEWコマンド嫌いな人は使わない。

MUMPSは1960年代からある言語だから、今のWindows始まってからpc始めた
人々には難しいかもしれない。
Mumpsを使いこなすと、SQLなんて使えなくなる。
Mumpsは人間の脳の記憶に近いらしいから、人類であれば使いやすいのではと思う

0056NAME IS NULL垢版2005/05/29(日) 10:27:36ID:???
>MUMPSは1960年代からある言語だから、今のWindows始まってからpc始めた
人々には難しいかもしれない。

そういう人にはぜひCacheObjectScriptを。
いわゆる構造化プログラミングにも対応した
拡張M言語ともいえます。
クラスメソッドならVBライクなCacheBASICもあるし。

>Mumpsを使いこなすと、SQLなんて使えなくなる。
>Mumpsは人間の脳の記憶に近いらしいから、人類であれば使いやすいのではと思う

これはMUMPSの肝である「グローバル」のことを言っているのだと
推測します。
いわゆる「永続化できる連想多次元配列」こそMUMPSをここまで
生き延びさせてきた要因かもしれない。
バリバリのプログラマなんだけど、RDB/SQLの考え方やその
デメリットに辟易してる人なら、直感的に気に入るはず。

そんなによいものなら、なんで日本市場ではニッチなんだろう、
という疑問がある人は、吉田さんの本を読むべし。
0057NAME IS NULL垢版2005/05/29(日) 10:37:54ID:???
いまだに階層型DBをマンセーする香具師がいるとは驚きだな。
そういう議論は80年代で終わったかと思ったが。
0058NAME IS NULL垢版2005/05/29(日) 10:44:52ID:???
Cacheは何故隠されていたか

■速すぎる.. HWメーカーが支持しない
 例えば、RDBなら1億円のマシンが売れるが、Cacheでは1000万円のマシンしか売れない

■日本企業がすべて開発販売に失敗
 1980年頃O、T、M、P、H、(N)、D
 MUMPSはダメだ.. ネガティブキャンペーン

■ユーザーは成功しすぎて話したがらない
 競合他社ではRDBで40億のシステムを、自社では8億で開発した…
0059NAME IS NULL垢版2005/05/29(日) 11:16:33ID:???
> 57
よく調べもしないでRDB派のFUDのノリそのままでくるとは
驚きだな。ていうか笑えるな。
いわゆるCOBOL方面の階層化DBとデータの持ち方が
ちがうからな。
自分で試してから批判したほうがいいと思うぞ。
0060NAME IS NULL垢版2005/05/29(日) 11:40:16ID:???

>■速すぎる.. HWメーカーが支持しない

ちょっと前だと当てはまる構図ですね。日本のソフトウェアが
欧米製に完敗し、プラットフォームビジネスに切り替え。
ハード・ソフト両方売っているSIerはシステム開発はおまけで
ハードで利益を出す。

オープンソースがはやり、Linuxがのさばり、利益率が高い
RISC系オープンサーバが売れなくなって、安いIA/Linuxに
路線変更。今の頼みの綱はサポートサービスによる収益。

Cache'はハードの性能をあますとこなく生かすので、
ユーザのコストメリットは高い。

>■日本企業がすべて開発販売に失敗
「F」も入れといて。でも、最近は運用実績からみなおされてきて
既存のRDBリプレースならずとも分析系などで人気がでてきている。

>■ユーザーは成功しすぎて話したがらない
おれも客の巨大データつかって、SQLアクセスのみ
だったけどOracleとの性能比較したらびっくりしたよ。
そのときはRDB/SQLしか知らなかったから、
MUMPSグローバルの特性をISJにレクチャーしてもらって
ダイレクトアクセスに処理を書き換えたら感動物だった。
いちおうDBA15年選手でOracleMasterも持っているので
Oracleのチューニングは死ぬほどしたけど、勝てなかった。
0061NAME IS NULL垢版2005/05/29(日) 22:10:39ID:???
データのretrieve以外もはやいのかな?
セッションいっぱいで更新したらだめだめとかない?

データファイル壊れても完全リカバリとかできる?

安全装置がないから早いですってのは嫌だYo

0062NAME IS NULL垢版2005/05/29(日) 22:41:39ID:???
> データのretrieve以外もはやいのかな?
> セッションいっぱいで更新したらだめだめとかない?

セッションいっぱいといっているのは、
サーバマシンリソースの限界のことを言ってる?
何の限界をさしてる?
あと、セッションいっぱいになったがために
問題になった実例ケースを想定して話しているなら、
その実例を起こした製品はなんだ?
それって、DB製品自体の問題だけじゃなくて、インフラや
消費リソースの見積もりが極度に悪いとかの場合もあるからな。
あ、あと、Oracleなんかだと負荷高騰による障害パッチが
サポートを[買えず|買わず]に運用している環境にあたって
なく、サポート情報も知りえないから障害なのか仕様なのか
すら判別できないという悲惨なケースもあったなあ。


> データファイル壊れても完全リカバリとかできる?

当然。オンラインバックアップも可能。

> 安全装置がないから早いですってのは嫌だYo

ああ、InnoDBがなかったころのMySQLみたいのね。
更新ログもってなかったらそりゃ早いだろ、と。

ちゃんと更新ログもってるし、もし速さだけを追求したい
(テンポラリ作業用とか)トランザクションに対して
Oracle の NOLOGGING のような機能もあるよ。

更新ログ転送してOracle DataGuardのようなリモートサーバ
へのDB複製(シャドウイング)もできるしね。
0064NAME IS NULL垢版2005/05/30(月) 09:32:51ID:???
儲の立てたスレは大抵キモいな
0065NAME IS NULL垢版2005/05/30(月) 12:40:02ID:bVXD8g/V
>>63 >>64
 MUMPSはダメだ.. ネガティブキャンペーン???

SQLこそ、くそDBである。早くなくなっちまえ。
ユーザーからみれば、安くて安定したシステムを希望する。
SQLエンジニアは、プログラムがややこしいのです、
時間がかかります。なので、コストが高くなりますで、
エンジニアっぽい能書きたれるけど、実際はSQLしか
しらんから他のDBに手を出すのも今更、怖いで勉強もしない。
そこがいかん!!。
なんでも、キモイの言葉で済ます低脳な発言はやめろ。
言葉知らずども!!
MUMPS,CACHEを知り尽くして、反論してみろ。

0066NAME IS NULL垢版2005/05/30(月) 13:32:35ID:???
MUMPSって、DECのミニコンとかで動いてたヤツ?
0067NAME IS NULL垢版2005/05/30(月) 13:53:02ID:???
MUMPSの多次元連想配列って、どう使うのがセオリーなの?
「M(MUMPS)メモ帳」っていうページを見つけたんだけど、
1レコードをひとつの文字列としてまとめて変数に格納する
みたいなテクニックだった。
例えばこのスレの>>1を^DATというグローバルに入れる場合は
↓のような感じ。

^DAT("db",1108952588,1)="2005;02;21;21;11;08;医療、金融、物流、製造でいまだに活躍!\n古参も新参者も、さー語ってくらっしゃい。"

素人考えでは、

^DAT("db","Board Name")="データベース板"
^DAT("db",1108952588,"Thread Name")="【M言語】キャシエ・CACHE【MUMPS】"
^DAT("db",1108952588,1,"Year")=2005
^DAT("db",1108952588,1,"Month")=2
^DAT("db",1108952588,1,"Date")=21
^DAT("db",1108952588,1,"hour")=11
^DAT("db",1108952588,1,"minuit")=23
^DAT("db",1108952588,1,"second")=8
^DAT("db",1108952588,1,"content")="医療、金融、物流、製造でいまだに活躍!<br>古参も新参者も、さー語ってくらっしゃい。"

こんなツリーを作ってしまいそうなんだけど。
効率が悪くなるからダメ?
006867垢版2005/05/30(月) 13:56:22ID:???
あ、名前とメアドとのフィールドを忘れてた。

^DAT("db",1108952588,1)="1;sage;2005;02;21;21;11;08;医療、金融、物流、製造でいまだに活躍!\n古参も新参者も、さー語ってくらっしゃい。"

こうですね。
0069NAME IS NULL垢版2005/05/30(月) 14:28:16ID:???
YahooBB219023164105.bbtec.net


荒らし常習犯↑↑
007062垢版2005/05/30(月) 23:35:36ID:???
> 65

俺は製品の批判はするけど、RDB理論とSQL自体は批判しない。
普通のファイルアクセスだって、大量データの全なめ用途
だけなら最速の場合もある。
適用ゾーンと使い方を間違えずに、問題にフィットする
データ操作を行えばいいだけ。
中傷なんぞ勝手に言わせとけ。どうせプログラムしか
組んだことなくて、要件定義から運用保守までなぞ
したこともないし苦労したこともだろうから。

> 67、67

建設的な質問サンクス
上の例だと、";" を区切りにしたPIECE構造はあくまでデータで、
このデータを検索するキーとしては("db",1108952588,1)
=板、スレ、投稿番号の3つでよいという構成ならOKと
いうことになるね。

キミが書いた例なら、そのあとの要素が規則的に続き、本文は
データとして扱うなら

^DAT("db")="データベース板"
^DAT("db",1108952588")="【M言語】キャシエ・CACHE【MUMPS】"
^DAT("db",1108952588,1,2,21,11,23,8)="医療、金融、物流、製造でいまだに活躍!<br>古参も新参者も、さー語ってくらっしゃい。"
^DAT("db",1108952588,2,2,21,11,24,46)="データベース新たな選択肢 〜 略 〜 "
^DAT("db",1108952588,3,2,21,11,24,46)="お仕事ですか? 〜 略 〜 "

の方が効率的。
要素確保の分効率が悪くなると思いがちだけど、
同じ要素位置の値は、そのままストレージに格納されるのでは
なくて、その前の同じ要素構成の部分までは同じ、という
情報だけを持つので、このパターンだと、板とスレの要素値は
省略されてストレージに格納される。
この並びによって、実際の格納サイズも削減できるし、
RDBなら検索キーのカーディナリティ(多重度)が低い
場合でも、フルスキャンする量が減るので効果大

ソートは不要、ストアした時点で自動的に要素順に格納してくれる。
削除・更新したときのストレージの断片化も心配無用。
ストレージエンジンが自動デフラグしてくれる。
デフラグ負荷も実運用上ほとんど気にならない。

あくまでここまでは標準MUMPSのグローバルアクセス。
Cache’の拡張Mはまだいろいろある。スキーマも持たせたい
場合は、クラス定義をすることになる、ストレージには最終的に
クラスに対応するグローバルにストアされるが、その構成が
異なる。その辺はマニュアルを見るべし。

https://www.intersystems.co.jp/support/csp/main.html
https://www.intersystems.co.jp/support/csp/ggbl/ggbl.html
https://www.intersystems.co.jp/support/csp/ggbl/ggbl_sqlobj.html
0071NAME IS NULL垢版2005/05/31(火) 22:59:33ID:???
UNIXでshell&Emacsべったりな生活を送っていた習性からかLinux版であっても
Windows機上の「スタジオ」という統合環境からのオペレーションを強要されるのが
なんとかならんもんかと思うのですが、その辺古くからのユーザさんはどうしている
のでしょうか?
当方OracleのクライアントはSQL*Plusが最強だと信じて疑わないコマンドライン派です。
Cache'に興味はあるんですがWindowsが(ry
007267垢版2005/06/01(水) 12:07:00ID:???
>>62
ありがとうございます。
レコードの要素を文字列で持とうが添字で持とうが、
データを一直線に並べて(という表現が適切か分かりませんが)
保持するのがいいんですね。

あと、検索性についても知りたいのですが、2chの例で続けますと、
更なる要件として、スレのage/sageがあります。
板を表示するときには、各スレの最終投稿日時の降順が基本ですが、
スレごとの最終投稿日時を決める際に、メール覧に"sage"という文字列が
含まれている投稿は考慮しないというルールです。

この場合、投稿データの登録時に、メール覧に"sage"が含まれない場合に
スレ別最終投稿日時インデックスを更新する、という処理になると思い
ますが、そのインデックスをどう表現するのがいいのでしょうか。
あるいはもしかすると、>>70の例の場合インデックス自体いらないのでしょうか。

ご教示ください。
0073NAME IS NULL垢版2005/06/01(水) 16:29:37ID:1D0d6fgZ
>>72

M言語のグローバルについて
グローバルに書き込んだ時点で、ノードごとにアスキーコード順に
書き込まれるようになっています。
>>70のグローバルを下記の順でSetコマンドを実行した場合

Set ^DAT("db",1108952588,3,2,21,11,24,46)="お仕事ですか? 〜 略 〜 "
Set ^DAT("db",1108952588,2,2,21,11,24,46)="データベース新たな選択肢 〜 略 〜 "
Set ^DAT("db",1108952588,1,2,21,11,23,8)="医療、金融、物流、製造でいまだに活躍!<br>古参も新参者も、さー語ってくらっしゃい。"
Set ^DAT("db",1108952588")="【M言語】キャシエ・CACHE【MUMPS】"
Set ^DAT("db")="データベース板"

逆にグローバルをセットしても
グローバルを参照した場合は、下記のように表示されます。


^DAT("db")="データベース板"
^DAT("db",1108952588")="【M言語】キャシエ・CACHE【MUMPS】"
^DAT("db",1108952588,1,2,21,11,23,8)="医療、金融、物流、製造でいまだに活躍!<br>古参も新参者も、さー語ってくらっしゃい。"
^DAT("db",1108952588,2,2,21,11,24,46)="データベース新たな選択肢 〜 略 〜 "
^DAT("db",1108952588,3,2,21,11,24,46)="お仕事ですか? 〜 略 〜 "

ノードで参照する場合であれば、インデックスは不要です。

0074M経験者垢版2005/06/17(金) 19:46:26ID:???
キー値前ゼロの有無でダブルコーテーションの要不要が変わるのはやめてくれ〜
前ゼロキー値がソート順で後ろになるのはやめてくれ〜
コメント行入れるとネストがぶっちぎられるのはやめてくれ〜
ネスト内でNew付け忘れるとネスト抜けても変数が残るのはやめてくれ〜
ループのブレイクがフラグ変数使わないと書けないのはやめてくれ〜
0075M経験者垢版2005/06/17(金) 19:59:34ID:???
ごめん。もうひとつ追加。
>ネスト内でNew付け忘れるとネスト抜けても変数が残るのはやめてくれ〜

でこのときネスト外に同名変数があると、
有無を言わさず上書きになるのはやめてくれ〜
0076NAME IS NULL垢版2005/06/18(土) 06:30:49ID:QkO2JNYV
>>74
>キー値前ゼロの有無でダブルコーテーションの要不要が変わるのはやめてくれ〜
"000005"
000005 の件ですね。
 これは、ごめんなさい。あなたが、コンピュータそのものを理解していないだけです。
 上記の"00005"は文字列として扱う、000005は数値として扱うなんです。
仕様としては理に適っています。
>前ゼロキー値がソート順で後ろになるのはやめてくれ〜
本件も、ソート順がAsciiコードである事を理解されていないからですね。
 仕様としては正しいです。
>コメント行入れるとネストがぶっちぎられるのはやめてくれ〜
何を言おうとしているのかわからん
>ネスト内でNew付け忘れるとネスト抜けても変数が残るのはやめてくれ〜
 Newコマンド使わなきゃいいんじゃないの?
>ループのブレイクがフラグ変数使わないと書けないのはやめてくれ〜
どこのMumpsを使用したの?
M経験者と言われても、数ヶ月でしょうか?SQL(2次元DB)経験者ではとっつきにくいかも
しれませんが。仕様を理解されて使うと
本当にいいDBですよ。
0077M経験者垢版2005/06/18(土) 13:08:08ID:???
>>76 あーレスどうもです。

> >キー値前ゼロの有無でダブルコーテーションの要不要が変わるのはやめてくれ〜
> これは、ごめんなさい。あなたが、コンピュータそのものを理解していないだけです。
> 上記の"00005"は文字列として扱う、000005は数値として扱うなんです。
>仕様としては理に適っています。
理に適っていません。
「000005は数値として扱う」は厳密に言うと5として数値扱いになります。
そして555555は常に数値扱いとなります。"555555"と書いてもです。
つまりこの問題の本質は、固定桁数数値をキー値として扱う場合、
先頭がゼロかそうでないかで処理を分けなければいけないということです。
○○コードとか○○区分とか、世の中固定桁数数値で扱わなきゃ
いけないものが結構あるのですが。
# って書くと「常に前ゼロなしで扱えばいいのでは」という話になるのですが、
# それはそれで表示時の前ゼロ書式化/書式化解除が手間でしょう。

>>コメント行入れるとネストがぶっちぎられるのはやめてくれ〜
>何を言おうとしているのかわからん
↓こんな感じ。
D ;ネスト開始
.S n=1 ;ネストの中。こことか
.;こことかにコメントは書けるが
;ここに書くとネストも終わってしまう
.S n=n+1 ;この行は実行されない
いちいちコメントアウトするときも(.の有無に)気ぃ遣わなきゃならんとは…。

>>ネスト内でNew付け忘れるとネスト抜けても変数が残るのはやめてくれ〜
> Newコマンド使わなきゃいいんじゃないの?
言い換えると「ローカル変数は使用禁止。構造化は諦めろ」ということですか?

>>ループのブレイクがフラグ変数使わないと書けないのはやめてくれ〜
>どこのMumpsを使用したの?
これは失礼。説明不足でした。ループ継続条件だけではなく
breakもあるwhileループを想定しています。どう書くのがスマートですかね?

>M経験者と言われても、数ヶ月でしょうか?SQL(2次元DB)経験者ではとっつきにくいかも
>しれませんが。仕様を理解されて使うと
>本当にいいDBですよ。
Cache'4で1〜2年ほど。VT200環境で動かす業務アプリでした。
きっとそれでは経験不足なのでしょうが、その上での感想は
・確かにDB自体の処理スピードは悪くない
・しかしMの言語仕様がロートルなので、生産性はまったくよくない。
・変数スコープが変態的なので、特にデバッグでは確実に死ねる
といったところ。構造化が中途半端にしか出来ないのは困りものですね。
Newの仕様に意義を見出すかどうかで、Cache'に対する印象が
分かれるかと思います。
0078M経験者垢版2005/06/18(土) 13:10:25ID:???
やめてくれ〜シリーズにもうひとつ追加。
空白文字の数が一つか二つかに、文法的意味を持たせるのはやめてくれ〜
0079NAME IS NULL垢版2005/06/19(日) 13:00:07ID:GkH7LfsQ
前ゼロの件ですが、0005も5もMumpsでは5です。
Mumpsで0005として扱いたければ、$E(10000+5,2,5)
と書けば0005と表示されます。
確かに世の中では、固定数値で扱う事は多々とありますね。
Mumpsでは無駄なデータ情報は持たないが原則で作成するので
他のPic x(20) とか 8桁固定とか使われるDBではそのように0詰め
とかしてDB登録しなければいけないですね。

Do<スペース><スペース>の件ですね。
コマンドの仕様はご存知ですか?
Mumpsの基本プログラムは昔のBasicと同様上から下の行へしか行かないGoto,Quitなど
特殊な場合を除き。
Do<スペース><スペース>は、このコマンドの次の行以降で"."で始まる行を飛び先
として扱い、"."で区切られた行がなくなればそのとび先は終了となっています。
なので、"."のない行があるからとび先は終了で正しいのです。
>>いちいちコメントアウトするときも(.の有無に)気ぃ遣わなきゃならんとは…。
それは、当然気を使わなければいけませんね。

Newコマンドの件ですが、同じ変数名を、あるサブルーチンで使用する場合
などは有効と思えますが、重要な変数名であれば、いたるところで変更される
事のないように変数を利用するのがいいと思います。
よく、構造化構造化と頻りに言葉に出されるエンジニアさんがいますが、
それが、絶対正しいのでしょうか?構造化して便利に利用できるのもいいですが
それにより、プログラム変更が難しくなり、仕様変更に耐えれないプログラム
になるなら、古典的なプログラムでもいいと思います。エンドユーザーから
見れば、プログラム内容ははっきりどうでもいい話なんです。それより、完璧な
仕様で動作してくれればいいのです。エンジニアが、頻りに構造化構造化と言われても
彼らの一人よがりでしかありません。

breakもあるwhileループ
どんなのを想定されていますが、VBなどで書いてみてもらえれば書きますが

M言語の仕様自体は確かに古いです。おっしゃる通りだと思いますが、でもそれで
十分機能は果たしています。最新の言語のようにコマンドが多い方がいいですか?
その文コマンドを覚えなければいけませんよ。
Mumpsは基本的にa-z,$a-$z,Za-Zzなどアルファベットまたは$付き,Z関数で構成
されていて、コマンドは少なく仕様は世界基準も整備されている、新興言語のように
バージョン違えば、コマンドも違うなんて事にはなりにくいのです。
生産性がよくない事は全くをもってありません。
コマンドを知らないプログラマが言う言い訳に過ぎません。

空白文字が1文字2文字で文法が変わると言うのは、それはそれに意味があるからです。
空白文字を1つであなたは、プログラムを書いたプログラマの意思を判断できますか?
仕様は仕様なんだから、それに対応できる理解力が必要です。なので、Mumpsに抵抗を
感じているんではないでしょうか?
0080NAME IS NULL垢版2005/06/19(日) 13:15:52ID:???
>>79
話のすりかえもはなはだしいな

>エンドユーザーから
>見れば、プログラム内容ははっきりどうでもいい話なんです。それより、完璧な
>仕様で動作してくれればいいのです。エンジニアが、頻りに構造化構造化と言われても
>彼らの一人よがりでしかありません。

こんなこと書いといて、あとはひたすらMumpsの擁護かよ。


0081M経験者垢版2005/06/20(月) 00:13:48ID:???
遅ればせながら>>77最後の一分の誤記を訂正致します。orz
誤:
Newの仕様に意義を見出すかどうかで、Cache'に対する印象が
分かれるかと思います。
正:
Newの使用に意義を見出すかどうかで、Mに対する印象が
分かれるかと思います。
>>79さんは「意義を見出さない」方のようですね。

>確かに世の中では、固定数値で扱う事は多々とありますね。
数列をあらわす項目は文字列型、数量をあらわす項目は数値型、
というように使い分けられるのがベストですが、Mでは言語仕様上
先頭がゼロなら常に文字列型(但し先頭に"+"をつければ前ゼロを除去し
数値型にキャストしたことになる)、そうでなければ常に数値型
という扱いになってしまうようです。
結局、「固定桁数数値という要件に対する解決は、Mにはない」
という解釈でよいのですかね。どのように解決しているのか
事例を出していただけるとむしろありがたいのですが。

>>いちいちコメントアウトするときも(.の有無に)気ぃ遣わなきゃならんとは…。
>それは、当然気を使わなければいけませんね。
"."を評価する以前に、コメント行の除去が行われるよう
文法解析仕様が組まれていれば、気を遣う必要すらないのですが。
「当然」なのではなく「理不尽な仕様」と考えます。

>Newコマンドの件ですが、同じ変数名を、あるサブルーチンで使用する場合
>などは有効と思えますが、重要な変数名であれば、いたるところで変更される
>事のないように変数を利用するのがいいと思います。
「重要な変数」が引き立つのは、「重要でない変数」があるからです。
この「重要でない変数」の寿命・名前の有効範囲をサブルーチン内に
閉じ込めることがNew(というよりローカル変数)の真骨頂なのです。
(MではNew宣言した変数でも同名での読み書きが下位ネストで可能なので、
他言語で言うところのローカル変数とはちょっと違う)
グローバル変数の読み書きは要注意というのは確かにその通りですが、
ローカル変数にも注意を要求されるのは組む側としては負担の増加です。

>よく、構造化構造化と頻りに言葉に出されるエンジニアさんがいますが、
>それが、絶対正しいのでしょうか?構造化して便利に利用できるのもいいですが
>それにより、プログラム変更が難しくなり、仕様変更に耐えれないプログラム
>になるなら、古典的なプログラムでもいいと思います。エンドユーザーから
これはとんだFUDですね。この文脈では
「構造化(プログラミング)するとプログラム変更が難しくなり、
仕様変更に耐えられないプログラムになる」
というように読み取れますが、その根拠は何ですか?
逆に古典的なプログラムだと、そんなことはありえないんですか?
構造化/非構造化それぞれについて、具体例を挙げていただけませんか?
私の経験では「構造化プログラミングによりプログラムの見通しはよくなり
製造時の気遣いが減る分生産性は上がる。プログラム構造にハマれば
プログラム変更時に当該部分を差し替えるだけですむので、
仕様変更に耐えるチャンスは増える」なのですが。

長くなったので次へ。
0082M経験者垢版2005/06/20(月) 00:15:06ID:???
>breakもあるwhileループ
>どんなのを想定されていますが、VBなどで書いてみてもらえれば書きますが
VBだと、Exit Do/Exit Forにあたりますね。

Do While i < 10
  If i = j Then Exit Do
  i = i + 1
Loop

# 図らずもcontinueはあるんだな…。

>M言語の仕様自体は確かに古いです。おっしゃる通りだと思いますが、でもそれで
>十分機能は果たしています。最新の言語のようにコマンドが多い方がいいですか?
>その文コマンドを覚えなければいけませんよ。
これまたFUDですね。CもJavaもC#も予約語の数は決して多くはないですよ。
その分ライブラリが多いのですが、それは適而リファレンスを見ればよい話です。
予約語分を網羅すれば制御構造の文法は分かるのだから、
むしろ制御構造と機能を分けた、洗練されたやり方だと思います。
逆にライブラリを含めた上でコマンドの少なさを誇られても、
それは即ち実現できる機能の貧弱さを示すだけなのですが…。

>Mumpsは基本的にa-z,$a-$z,Za-Zzなどアルファベットまたは$付き,Z関数で構成
>されていて、コマンドは少なく仕様は世界基準も整備されている、新興言語のように
>バージョン違えば、コマンドも違うなんて事にはなりにくいのです。
>生産性がよくない事は全くをもってありません。
>コマンドを知らないプログラマが言う言い訳に過ぎません。
ここで言われている生産性とは、単に習得の容易さのことであり、
私が考えている生産性とは意味が違います。私が考える生産性とは
「文法は一通り習得したその上で、如何に気遣いなく製造・デバッグが出来るか」
です。前述の通り、前ゼロの有無を考慮したコーディングが必要だったり、
コメントアウトの際ネストに留意する必要があったり、
うっかりNewを付け忘れてもコンパイルエラーにならなかったり、と
どうも「他言語ではしなくてもいい苦労を強いられている」
ように思えてなりません。やはり生産性はよくないと考えますね。

>空白文字が1文字2文字で文法が変わると言うのは、それはそれに意味があるからです。
>空白文字を1つであなたは、プログラムを書いたプログラマの意思を判断できますか?
>仕様は仕様なんだから、それに対応できる理解力が必要です。なので、Mumpsに抵抗を
>感じているんではないでしょうか?
私もいろいろな言語をやってきましたが、空白文字を区切り文字としてのみではなく
その個数にまで意味を持たせる言語はMが初めてでした。
他言語では空白文字がいくつあっても同じ意味合いでしたから。
そんなMの変態的文法に抵抗を感じていることは、否定しません。

えーと…、ところでこれ(>>79)、釣りじゃないんですよね。
0083NAME IS NULL垢版2005/06/20(月) 14:10:48ID:???
>固定桁数数値という要件に対する解決は、Mにはない

データの型としては、Mには文字列しかありませんので、
プログラムでどうにかするだけ。
Cacheは知らんが。
0084M経験者垢版2005/06/22(水) 20:16:56ID:???
>データの型としては、Mには文字列しかありませんので、
微妙に不正確な気が。いや感覚的には分かるけど。
・変数に型はない
・文字列扱い/数値扱いどちらで評価されるかは、格納値に依存する
厳密には↑では?

>プログラムでどうにかするだけ。
ないものねだりなのは分かってますが、結局組む人が知恵使って
どうにかして正しく動作するようにしないといけないのね。
固定桁数数値使用時の「定石」みたいなのは
確立されていないんでしょうか。
0085NAME IS NULL垢版2005/06/22(水) 23:19:17ID:???
>・変数に型はない
>・文字列扱い/数値扱いどちらで評価されるかは、格納値に依存する
同意。
でもその為にパタンマッチングが存在する。
いちいちそうしなければならないのか、という気持ちもわかるけど
言語の仕様で対応されていないならMに限らず多かれ少なかれ
他の言語でも知恵使ってプログラムで対応してるでしょ?
0086NAME IS NULL垢版2005/06/24(金) 22:11:56ID:???
>>85
> Mに限らず多かれ少なかれ

ダウト。
多いと少ないじゃ天と地の差だろう。
0087M大好き垢版2005/06/25(土) 18:40:13ID:84dv6T3H
DSMから始まりVMS、SP−MUMPS,U−MUMPS、キャシエと
M言語を使い始めて約20年。その間、メジャーなDBとは一通り出会いまし
たが。。。可変長の利便性は離れがたいものがあり、今後もM言語をメインに
使用続ける事になると思います。
0088NAME IS NULL垢版2005/06/26(日) 14:24:14ID:???
キャシエも可変長データ扱うけど、
容量の大きなグローバルをキルしてもcache.datがHDD上に占める
サイズはキルする前のまま…グローバルが大きくなればそれだけ
cache.datも大きくなるのにグローバルをキルしても小さくならないんじゃぁ
可変長なんだか固定長なんだか…中途半端だとおもう。
008967垢版2005/06/29(水) 14:07:08ID:???
>>73
スレッドフロート方式の掲示板の
・書き込みが新しい順にスレ表示
・スレ内容は最新X件を表示
・ただしメール欄が "sage" のものは考慮外

という表示についての indexing を質問したかったんですが…
0090コンチハ垢版2005/06/29(水) 14:54:57ID:n2BAd9gd
>>71 Windows機上の「スタジオ」という統合環境からのオペレーションを強要されるのが
なんとかならんもんかと思うのですが、その辺古くからのユーザさんはどうしている
のでしょうか?
私の隣の彼は、Cache ObjectScriptのプログラムはMIFESで書いてますね。
私もデバッグはターミナル(つまりコマンドライン)でやってます (^^
0091コンチハ垢版2005/06/29(水) 14:58:58ID:n2BAd9gd
>>84 ないものねだりなのは分かってますが、結局組む人が知恵使って
どうにかして正しく動作するようにしないといけないのね。
固定桁数数値使用時の「定石」みたいなのは確立されていないんでしょうか。

何しろ教科書も少ないからなあ。皆さん自分の工夫でこなしているんでしょうね。
ちなみに、Cacheなら固定桁数数値をDataTypeで定義してしまえばOKでしょう。
0092NAME IS NULL垢版2005/06/29(水) 15:39:07ID:XHeGGAmV
       , -'"´  ̄`丶、_
      ,.∩         `ヽ
    〃∪'´ ̄`二二人\  ヽ
    | ツ´ ̄ ̄ ̄ ̄´ ヾ ヽ. ',
    |ハ ,ニ、   ,. - 、 | | | l |
    | ハ ィハ     ,二ヽ. | | | | | 同じ板にコピペするとそのままだけど、
    | | | じ'   |トJ〉  /)} l | 違う板にコピペすると鬼のような怖い顔
    | ハ  、'_,   ̄,, 厶イ川| に変わる摩訶不思議な佳子様コピペ。
    l l /\    .. イV\川 |
    ,' l l ,イ `l ̄´ /   /ヽl l
    l | l ハ  `メ、    〃  ヽヽ、__ノ


0093NAME IS NULL垢版2005/06/29(水) 16:28:27ID:???
「固定桁数値」という考え方は数を表示するフォーマットの問題に過ぎないので、
(想像だが)普通はMプログラマはソート等で数として扱いたい場合は
「001」と「01」と「1」が別の添え字(値)として同居したりするのを防ぐために、
先行ゼロをつけたままの形式ではグローバルにsetしないとは思う。

$tr($j(数値,桁)," ",0) で固定桁表示にできるし +固定桁数値 で元に戻るし
仮に先行ゼロをつけたままでも演算はできるし
何が不満なのか何をそんなにこだわっているのかがさっぱり見えてこない。
0094U ◆CZtFsGiu0c 垢版2005/06/30(木) 13:03:59ID:???
>>90
インターシステムズの人と話す機会があったので、Eclipseのプラグインとか
考えていないんですか? と聞いてみた。検討はしているが、計画はないとのこと。
0095NAME IS NULL垢版2005/06/30(木) 15:05:30ID:???
「固定桁数値」は、ノードにセットするときはソート順を間上げて0を取るって感じでしょうか?
希に、"5"と"05"は別のデータとして管理してくれ、とかいわれて泣きを見る事がありますが。
0096NAME IS NULL垢版2005/06/30(木) 15:08:49ID:???
10.50 をノードにセットすると、10.61 より後になるとか。
0097NAME IS NULL垢版2005/07/02(土) 16:31:32ID:VLT50gqA
知り合いにCacheってどうなのって聞かれたので、
「別の言語を1本知ってるひとなら大丈夫だよ」と答えました。
1日だけ研修で習ったのですが、なかなか素直な言語だと思いました。
0098NAME IS NULL垢版2005/07/05(火) 17:27:47ID:???
>>97
知っている別の言語が何かによって
印象はかなり変わってくるな。
0099NAME IS NULL垢版2005/07/19(火) 19:55:51ID:19Obe/Ej
最近知ったのですが、Cache'のライセンスの方がOracleとかよりも高いですね。
昔は安かったのかもしれませんが現在はOracleの約2倍くらいしてるみたいです。。。
0100NAME IS NULL垢版2005/07/23(土) 21:06:18ID:???
>99
基本的にユーザライセンス(指名・同時)の計算を
単純にユーザ数だけで計算してるからだね。
負荷分散を考慮した複数サーバ構成でやると、
Oracleよりはるかに安くなるケースがある。


あと、言語の生産性を「昔のM言語」だけで語るのをやめてくれー。
あと、言語オタクは死んでくれー。DBMSの本質を語れないやつは
ここにくるなー。お前らは一生プログラマーでいろー。
プログラミングの話題しかできないやつとは議論したくねー。



0101NAME IS NULL垢版2005/07/23(土) 21:27:16ID:???
漏れはCacheに触ったことはないんだが、ちょっと教えて。
CacheはM言語でアクセスすることがやっぱり前提にあるんかな?
SQLでもアクセスできるみたいだけど、それだとRDBMSとの差別化がわからん。
「表」っていう概念は人間にとってわかりやすいからね。

言語まずありき、では普及するのは厳しい気がする。
0102NAME IS NULL垢版2005/07/23(土) 22:53:19ID:???
>>100
じゃあ>>89の言ってるindexingについて議論してみろ
お前スレの最初から素晴らしいですとか画期的ですとか印象しか書いてないだろ
0103NAME IS NULL垢版2005/07/24(日) 21:27:05ID:???
まあこれまでのやりとりを見ていて俺が思うに、多次元連想配列によるデータストアは
RDBと比較して自由度が高いとか柔軟だという以前に 単にプリミティブなんだな。

だからスキーマとか索引とか、システム側が提供してくれない分、プログラマが工夫して
やりくりしなきゃならない。

提供する機能が最低限だから、ディスクの使用効率も高いように見えるが
ちゃんとパフォーマンスを考えて索引つけたり更新したり
という処理を付加していくと、その分データ構造が冗長になって、
結局はそれほど効率は高くないんじゃないかという印象を受ける。

また提供している概念がプリミティブだから、理解するのが容易とも言われているが、
実用的なモノを作れるようになるためには、上記のような何をどのように格納すべきなのか、
というノウハウまで習得しなければならない。そしてそのノウハウは個人個人の財産でしかなく
広く共有化されるところまでいっていない。MUMPSというシステムは長い歴史を誇っているらしいが、
そういう意味では非常にもったいないというか、ユーザーグループは今まで何をしてたんだ、
と問いただすべきだろう。

あとシステムに抱き合わせで用意されている言語が前時代的だから、メタデータを基にした
定型処理のジェネレーティングみたいな手法も使えない。
例えば
「メタデータを元に構造化データをストアするルーチンを自動生成する」だとか
「データをストアすると同時に索引も更新するルーチンを自動生成する」
みたいなやつね。

DBMSの本質がどうとか言ってる人、こういう議論はどうかな。
0104NAME IS NULL垢版2005/07/31(日) 23:43:13ID:???
(1) ^A(X0, X1, X2, ..., Xn) = Y



(2) ^A(X0, X1, X2, ..., Xn, Y)

の違いがわかりません。
(1)は何か方向性を持つのでしょうか?
0106NAME IS NULL垢版2005/08/02(火) 09:48:21ID:???
>>104
どういう場合に(1)と(2)を使い分けるのかを聞きたいのじゃないか?

0107NAME IS NULL垢版2005/08/03(水) 23:55:59ID:???
実装の問題? よくわからん
0109NAME IS NULL垢版2006/01/30(月) 01:24:32ID:???
昔のMUMPSで作った「.rtn」のファイルをどーやっってインポートすればいいのかわからん。
ISJの人に聞いたら教えてくれるかな?
0110NAME IS NULL垢版2006/01/30(月) 01:53:08ID:+memccet
age
0111NAME IS NULL垢版2006/01/30(月) 10:10:38ID:???
>>109
"オプション"を選んで入力形式を選べばDSM、DTM、MSMとかあるので、
適切なものを選べば大抵はそのままインポートできます。
SP-MUMPSはどれを選べばいいか知りません。
0112NAME IS NULL垢版2006/02/05(日) 01:21:47ID:???
>>111
どーもありがとうございます。
SP-MUMPSなのでやはりそのままではうまくいかず、ISJのサポートに電話しました。
TEXTに書き出したものをCACHE用に手を加え、スタジオに張りつけビルドすると良いそうなので
ぼちぼちやってみます。
0113NAME IS NULL垢版2006/02/10(金) 23:50:59ID:???
現在のフリーダウンロード版のキャシエって
Visual Studio .NET 用の C#かVB用のソースコードの吐き出しかそれに代わる機能ってありますか?

Visual Studio でいろいろいじくってみたいんだけど、
ホームページみてもいまいちよくわからなかったの
もしできるんなら、またユーザー登録してダウンロードしてみようかなぁっておもったんだけど
しってる人おしえて
0114NAME IS NULL垢版2006/03/09(木) 20:03:24ID:DnMor8qY
age
0115NAME IS NULL垢版2006/04/15(土) 03:15:39ID:EpKMiBe1
113>>
CD付きの本かいました。
0116NAME IS NULL垢版2006/06/23(金) 23:56:27ID:jKllpmvO
過疎ってる…
仕事でCACHEを使うことになってのですが、
なぜかMUMPSではなくSQLベースのRDB的な使い方をすることになりました。

理由はMUMPSを使える技術者が少なく、外注などを探しても
なかなかみつからないからだそうです。
そうなるとCACHEを使う利点がわかりません。

偉い人たちが何を考えているのかわかりません。
0117NAME IS NULL垢版2006/06/24(土) 17:57:44ID:68KCB3XC

手垢の思い
0118NAME IS NULL垢版2006/06/25(日) 10:24:14ID:???
ODBC接続でMUMPSって使えるの?
0119sage垢版2006/06/25(日) 18:16:04ID:HMh637Gm
MUMPSを使うというかMUMPSで作ったプロシージャを
ODBCから呼び出すんだよ。
ODBCとADOはMUMPSで作ったプロシージャ
を呼び出せた。
実行時引数も渡せた。
実行結果も取れるよ。
0120NAME IS NULL垢版2006/06/25(日) 18:17:08ID:???
なんか初歩的なミスをしてしまった。orz
0121NAME IS NULL垢版2006/06/26(月) 11:45:56ID:???
MUMPSはちょいと勉強すれば直ぐに理解できると思うんだが。
0122NAME IS NULL垢版2006/06/26(月) 21:07:02ID:???
ところがどっこい、それを理解できない(したくない?)SE気取りの
オサーン達がMUMPSじゃ駄目だ的なことを言うのよ。
で、シャッチョサン達はオサーン達の言い訳を
真に受けちゃったらしくてね…
で、>>116に戻ると。

つうか、CACHEでSQLって速いのか?
0123NAME IS NULL垢版2006/07/03(月) 10:47:33ID:???
チューニングをしていないOracleよりは速いとか。
逆に言えば、チューニングしたOracleよりは遅いということ?
0124NAME IS NULL垢版2006/09/04(月) 00:50:27ID:???
2ヶ月もレスが無い
かくいう私も話題は無いが
いや、聞いてみたいことはあるんだが、職場で特定されそうで聞けないw
0125NAME IS NULL垢版2007/04/06(金) 18:33:21ID:vNI9fQnt
気にせずに聞いちゃえば…って、すでに半年くらい経過してるのか。
0126NAME IS NULL垢版2007/05/03(木) 03:31:02ID:tuRSyPPi
こんなスレあったんだなw
とりあえず簡単に書けるとこだけ。

もう2年近くも前だが…w


>>81
確かに「当然」ではないだろうけど、「理不尽な仕様」でもない。

もともとインタプリタでもあるMumpsでは、
文法上タブコードの後には命令しか書けない。
つまり、「.」も前の行のネストを継承するという命令の一種。
命令すっ飛ばしたんだから、ネストは継承されない。

それとコメントするのに気を使わなきゃならないってのも、
C言語では/* */のコメントが入れ子に出来なかったので気を使ってたが…


>>101
>「表」っていう概念は人間にとってわかりやすいからね。

もちろん使用するデータの種類にもよるけど、
これはRDBが主流になり始めてから出てきた神話だったりもする。

生物の分類を考えたときに、表で考えるやつはまずいない。
大抵は樹形図になるはず。

RDB以前のデータベース設計の本なんかを読めばわかるけど、
分類データはまず樹形図になるので、
これをまず表に変換しなさい、ってな話が出てきたりもする。

Excelなんかで表を書くときでも、
同じ項目が繰り返される部分のセルを連結したりした時点で、
それはRDB的概念の表ではなくなる。


>>123
扱うデータの種類と設計によるとしか言えんわな。
Oracleのチューニングが何を指すかにもよるか。

結局トータルコストで判断するってアヤシゲな話にしかならなかったり…
0127NAME IS NULL垢版2007/05/17(木) 01:13:06ID:+H01EdRD
>>116
オラクルとかと比べて安いの?
0128NAME IS NULL垢版2007/06/10(日) 23:49:57ID:???
M言語使いは需要あります?
必ずしも日本に限らず。

c、Javaを今から始めたって、
ホントに使える人はさておき、
人数多いから、ニッチなのをと考えています。

あと、M言語開発者に聞きたいのですが、
作ったシステムのデザイン(見た目)は
いくらでも見栄えよくできますでしょうか?
いかにも一昔前の灰色背景の味気ない
ものしかできないのでしょうか?

DBスレで申し訳ありませんが、
お願いします。
0129NAME IS NULL垢版2007/06/12(火) 16:59:36ID:???
>>128
M言語=Cacheスクリプトで考えちゃうけど、
CacheスクリプトはDBのスクリプトなので
ストアドプロシージャみたいな感じでしか使わない。
なので、目に見える部分はVBなどで作ることになるので、
見栄えはいくらでも良くできます。

需要はわかりません・・・
0130NAME IS NULL垢版2007/06/14(木) 00:27:44ID:???
>>129
ありがとうございます。
良いものが必ずしもデファクトスタンダードに
ならないですからね。

cacheが良いものってわけでもないけど。
対極にあるのが圧倒的だから、どうなるのかな。
0131NAME IS NULL垢版2007/06/19(火) 20:42:23ID:4LH9wt8S
Q1.cacheに関わって何年?

Q2.DBの下地(他DBでの開発、学校等でさらりと)の有無

Q3.これからも扱っていく?

お答えいただければ、これ幸い。
0132NAME IS NULL垢版2007/07/16(月) 21:10:29ID:ZMP1Trrv
グローバルのエキスポートをCache形式で行ってしまったデータを
インポートするとDBがぶっ壊れるのは仕様?
Cache Block形式なら大丈夫なんだけど。
0133NAME IS NULL垢版2007/07/24(火) 10:53:29ID:wjpKL0uy
>>132
Cache形式でエクスポートした場合は、
Cache形式でインポートすれば大丈夫だが・・・

とはいっても、いつもは^%GOGEN と ^%GIGEN でインポートエクスポートしているけど。
0134132垢版2007/07/27(金) 22:27:21ID:dnoekjtc
おぉ、レスが付いてる。
>>133
それがCache形式でインポートしてもダメなんだよね。
インデックス付きのグローバルを*Dと*Iのセットでエクスポート&インポート
してるんだが、インポートした後ではユニークキー指定してあるプロパティの
値が10数個単位で重複するという状態になっちゃう。

エクスポートしたのと同じマシンでインポートしてるからエンディアンとか
文字コードとかの問題じゃないはずなのに。
0135133垢版2007/08/02(木) 19:18:26ID:aFZTPk8o
>>134
そのような現象は経験したことがないな。
大抵は文字コードか、形式を間違ってインポートしたときにおかしくインポートされる。

他の原因を強いて考えるなら、データ内に変な文字コードが入っていて
それが悪さしている場合だけど、現象からするとそうでもなさそう。

インターシステムズ社に問いあわせるしかないと思う。
0136NAME IS NULL垢版2007/09/03(月) 08:36:23ID:lTGjQw3l
そんなに高性能なら、なんで基幹とかで普及してないの?
実績が分かりにくい上に情報も少ないし、修得するのが実は非常に困難なのでは?
いくら歯の浮いた宣伝文句見せられても、キャシェと今更心中するわけにはいかないし、日本法人信用出来ないし、多分廃れるな。
0137NAME IS NULL垢版2007/09/03(月) 09:04:50ID:???
もともと医療業界で発達したDBだからじゃん? 顧客チャネルが弱い
海外だとぼちぼち金融系にも入ってってるみたいだけどね

ODBが速度速くて開発がラクって事はみんなわかってる
でも既存開発資産との兼ね合いとかISの事業継続性リスクとか見ると
移行コスト/リスクを正当化する稟議が降りないってことでしょ
SEも枯れてるDB運用じゃない新しい技術を習得する・
させることに二の足踏むだろうし
あとサポートの問題もあるんだろうな
0138NAME IS NULL垢版2007/09/04(火) 00:57:47ID:???
もともと、RDBはそれ以前からあった階層DBより性能は悪かったわけだが
RDBは瞬く間に普及し、階層DBは廃れていった。
性能ばかりが重要なファクターじゃないってことで。
0139NAME IS NULL垢版2007/09/20(木) 20:08:32ID:???
Cacheが速いのって、B+Treeでインデックス張ったキーだけじゃないの?
SQLアクセスって、BtrieveにSQL被せたPervasiveSQLを思い出すんだけど。


触ってみたけど、Object Scriptわけわかんね。%Library.Dateとか日付型に現在時刻
入れようとしたんだけど、ドキュメント検索して見つかった$hってはいらねー。他に現在時刻みつかんねー。
他の言語とかDBなら分かったはずの「格納時の内部表現」って奴がCacheだと全然わからん。
日付や時刻って、どうやって格納されるの?まさか文字列で"2007/09/20"って保存??
$hそのまんま代入できるプロパティ型ってある?みつかんないんだけど。無いなら、$hって何のためにあるの??

型同士の代入互換性が全然わかんねー!こんなの入門書の一番はじめに書いてそうなもんだけど、
見つからないのは探し方が悪いのか?MUMPSの常識は知ってて当たり前だから省略されてるのか?

教えて!エロい人!!!
0140NAME IS NULL垢版2007/09/20(木) 21:02:19ID:???
多分だけど、文字列で"09/20/2007"なら入る。
現在時刻を入れたければ、$zd($h)で入れればいいかも。
0141139垢版2007/09/21(金) 20:34:24ID:???
>>140
どうも。

日付が保存される場合、その内部表現は何なんでしょう?
日付時刻の場合は?ミリ秒まである場合は違うんでしょうか?

$hで出てくる値が内部表現そのものかな?と思っても、%Date型に$hは入らないで文字は入る。
その辺が、頭で「こうできるだろう」というイメージと違ってて気持ち悪い。
0142NAME IS NULL垢版2007/09/21(金) 20:58:35ID:???
自分も勉強中ではっきりとは言えないけど、
Cache'って内部表現は、全部文字列だよ。
だからCache'(M言語上)で使用するときは、文字列として扱う。
型を意識するのってJavaとか.netから使うとき位じゃない?
0143140垢版2007/09/26(水) 23:52:26ID:???
調べて分かったこと。

%Date, %Timeの内部表現は$holorogと同じみたいです。ただし%Dateは$hの前半分、%Timeは$hの後ろ半分
の数字が格納されます。
管理ポータルの論理モードの値は、%Date型の場合$hの日付部分と同じ値でしたので間違いないです。

一連の勘違いの原因も判明。
・%TimeStampの内部表現が$hと違うこと(クラスリファレンスによるとYYYY-MM-DD HH:MM:SS.nnnnnnnnnn という文字列)
・何を代入しても、%Save()しないとプロパティの検証が動かない事

が原因で、%Dateも%Timeも$hじゃない、とか26/09/2007でも2007-09-26でも何でも代入できる、とか勘違いしました。
0144NAME IS NULL垢版2007/10/05(金) 09:49:31ID:???
クラスを使わないオレには何を話しているか分からんw
0145NAME IS NULL垢版2007/11/02(金) 16:12:51ID:eSixQGFy
クラスを理解出来なくても。。。と言うよりクラスを知らなくても
十分業務アプリを作成出来てしまうから覚えようとする気持ちになれないなぁ(^^;
初めてcacheをさわる人に、cacheのマニュアルは突起にくいと思います。
分かる人が見てわかるようなマニュアルでは意味が無いのでは。。。
0146NAME IS NULL垢版2007/11/02(金) 22:05:02ID:???
でも、SQL使うならクラスは必要では?
たしか手作業で既存のグローバル変数とSQLのフィールドをバインディングできたと思うけど、
それ使ってるの?
自動でIndex更新するのも、システム管理ポータルでテーブルチューニングできるのも、
全部クラスつかってスキーマ定義するのが前提では?

十分業務アプリを作れる、という人は、GUIに何を使って、言語バインディングとかは
どうしてるの?サーバーサイドはクラスやメソッドじゃなくて全部ルーチンって事?

5.xからcacheに触れた人と、MUMPSから知ってる人ではずいぶんと前提が違う気がする。


>初めてcacheをさわる人に、cacheのマニュアルは突起にくいと思います。
激しく同意。緑本も読みづらい上に、肝心なことがどこに書いてあるのかわからない。
0150144垢版2007/11/22(木) 15:55:35ID:???
>>146
GUIはVB.NET、接続はActiveX。
で、ルーチン呼び出してデータを操作って感じ。

学生時代(10数年前)からMUMPSをやってたんで、
今でもこのスタイルで開発。
0154NAME IS NULL垢版2007/11/28(水) 19:50:08ID:???
>>150
$Order使ってるからSQL使ってないのか。
Cache関連サイトって、SQLとかクラス使う方法載せてるところが無いよね。
0155NAME IS NULL垢版2008/05/06(火) 14:46:39ID:???
MUMPS懐かしい
30年前に出会いました。
そのころは、DECのPDP11/40というマシンでプログラミングしていました。
PCはIBM5550のPC−DOSがスタンドアロンで普及しはじめた頃です。

会社にはメインフレームに接続した端末ばかりで、なかなか自由に使えなかった時代で、
コーディング用紙をキーパンチャーに渡しパンチをお願いしていました。
もちろん言語はCOBOLやFORTRAN、PL1でした。

MANPSに出会って、私は目が覚めました。
今までのプログラミングはなんだったんだろう。それぐらい感動しました。
クライアント/サーバで端末が10台くらいで、各端末はLANで接続されていました。
エディターもラインエディターでした。

MUMPSは本当に簡単で習得しやすい言語です。
勉強しながら住所録の入力・修正・削除・問い合わせの画面とプリント出力の
プログラムを他の仕事もしながら1週間程度でプログラミングできました。

ファイル構造(データベース)もwindowsのツリー構造そのままですね。
レコードはフルパスのような感じですし。

MAMPSの良さはデータの形式やレコードの定義を考えずに記述できるし
後から自由にレコードの構造を変更でき、他のプログラムにもあまり影響を与えないのです。

本当に少ないステップでプログラミングできるので驚きでした。

MUMPSを調べていてここにたどり着きましたが、
CACHEとうい言語に生まれ変わっていると知り、本当に嬉しい。
0156NAME IS NULL垢版2008/05/06(火) 15:11:27ID:???
私が今何ぜMUMPSに関心を持っているかと云いますと。
ライセンス料金です。

windows-OS・office・VB・2003SQLサーバ・CAL・oraclとライセンス料は非常に
頭の痛い問題です。

CACHEにするとサーバをLinuxにして端末をwindowsにしても
CACHEとwindowsのライセンス料だけで済むとしたら、
安いのではないかと考えたのです。
openOfficeも在るし、kingOfficeも在るので。

それにwindowsとSQL・EXCEL・ACCESS・VBはバージョンアップの度に各端末の
環境(バージョン)が違うため不具合続出なのです。

windowsをこの際見切りを付けたいのです。
0157NAME IS NULL垢版2008/05/12(月) 20:16:49ID:???
cacheってライセンス料高いんじゃないっけ?
0158NAME IS NULL垢版2008/06/23(月) 00:19:35ID:???
http://dokan-dev.net/about/
こいつを使ってcacheのネームスペースをWindowsのファイルシステム上にマウントできればいいんだけどなぁ。
さらにMercurialなんかを組み合わせて自動的にバージョン管理までするような仕組みもできそう。
誰か作ってみませんか(他力本願・・・)
0159NAME IS NULL垢版2008/07/21(月) 16:33:30ID:???
スタジオからソースを自動エクスポートして、svnで管理する方法ってない?
0160NAME IS NULL垢版2008/07/21(月) 17:54:57ID:???
svnってsource safeみたいなやつのことだよね?
cacheにエクスポートするクラスメソッドが用意されてるから
VBSとかで簡単なバッチ作ればできるんじゃね?
0161NAME IS NULL垢版2008/08/05(火) 22:36:55ID:???
プログラマじゃないんだが
仕事(医療保険者)で、これから導入するシステムがこれで組まれているんだそうだ
上読むと医療関係で実績があるらしいがレセプト処理なんかが得意ってことなのか
0162NAME IS NULL垢版2008/08/06(水) 07:23:01ID:???
別に得意ってわけでもない。
覚えることが少ないからプログラマじゃなくても何とかなるってだけ。
将来的にカスタマイズする予定があるならMUMPSやめとけ。
技術者の確保ができないから開発会社が固定されちまう。
0163NAME IS NULL垢版2008/08/13(水) 14:30:34ID:uZd+LBNL
x86_64でGT.Mをビルドしようとしてるのだけど嵌ってます。

$ gmake -f sr_unix/comlist.mk -I./sr_unix -I./sr_linux buildtypes=dbg gtm_ver=`pwd`

~/gtm/gtmsrc_5.3.0001A ~/gtm/gtmsrc_5.3.0001A/dbg/obj
~/gtm/gtmsrc_5.3.0001A/dbg/obj
gt_cc_option_I: Undefined variable.
gmake: *** [xfer_build] Error 1

バイナリでインストールしたもの(32bit)を gtm_ver に指定すると

gmake: *** No rule to make target `pro_all', needed by `all'. Stop.

となります。

centos5.2 x86_64, gmake 3.81, tcsh, icu3.6 なので環境的には問題なさそうなのですが。。。

.tcshrcには32bitバイナリ配布物の gtmcshrc 等をコピペです。

setenv gtm_curpro /usr/local/gtm
setenv OBJECT_MODE 64

set path = (/usr/local/bin $path)
set path = ($path . ~/bin)

setenv gtm_dist '/usr/local/gtm'
setenv gtmgbldir 'mumps.gld'
if ($?gtm_chset) then
if (($gtm_chset == "UTF-8") && (-e $gtm_dist/utf8)) then
setenv gtm_dist $gtm_dist/utf8
endif
endif
setenv gtmroutines ". $gtm_dist"
alias gtm '$gtm_dist/mumps -direct'
alias mupip '$gtm_dist/mupip'
alias lke '$gtm_dist/lke'
alias gde '$gtm_dist/mumps -r ^GDE'
alias dse '$gtm_dist/dse'
set path = ($path $gtm_dist)

なにか解決の糸口が分かる方、アドバイスを。。。
0164NAME IS NULL垢版2008/08/13(水) 21:01:38ID:???
>>162
レスありがとう
ただ既に成果物は納入されているので
後は導入支援を得て導入という段階になってる
開発はデ○タ…何か身元が割れそうだw
0165NAME IS NULL垢版2008/10/07(火) 13:33:25ID:14y3s4RQ
SQL環境下で動作テストをしていたものをcashe環境下で動作テストを行うのですが

SQL文のズレが分かりません。
SQLのJOIN関数は使わなくてもいいっぽいらしいのですが、どう作れば良いんですかね。
casheの概念や資料なんぞ貰わえず、とり合えず修正してくれと渡されたのですが。

casheについて講習してるような所があればお教えして頂けると幸いです。
0166NAME IS NULL垢版2008/10/07(火) 22:31:47ID:???
cache講習はInterSystemsがやってる。一日2万円。講習によって日数が変わる。
SQLはSQL-92の殆どが通じる。

Joinを使わなくて良いパターンは、Propertyが他クラスの場合、->構文で参照できる。
別にJoinを使っても結果は同じだから、だまって知ってるSQLを書けばいいよ。
まずは、システム管理ポータルからSQLを打ち込んでみたら?
あと、ドキュメントをみれば一応SQL関連は難しくない。MUMPS初めての人間がcacheを理解するのに
あのドキュメントは辛すぎるけど。
まず、Cache SQL入門のあたりを読んでみたらいい。
0168NAME IS NULL垢版2008/12/16(火) 23:05:11ID:???
これが最初に勉強中のプログラム言語だけどInValidDT()の使い方わかんねえ
てかいちいち従属で変数書いて検証しないとクラス定義に合致してるかわからないって面倒すぎないか
これだと普通にスプリクトに処理投げてるのと変わらない気がする
そのプロパティ設定したクラスでメソッド書いたら自動で適用されるものと思ってたのにプログラムってこんなものなのか
0169NAME IS NULL垢版2008/12/17(水) 19:54:27ID:???
InValidDTってなんだっけ?ドキュメントに引っかからないんだけど。

ちょっとした用途だとMySQLとかで十分だしな。でも大規模になるとEliteになって簡単に億超える罠。
みんなどれくらいの規模に使ってる?参考に教えて欲しい。
あんまり具体的だとInterSystemsにばれるかもしれないけど。
0170NAME IS NULL垢版2008/12/17(水) 23:11:18ID:???
ごめんInじゃなくてIsだった
IsValidDT
自分は1000人分弱、予想数百MB程度のデータを扱うつもり
このソフトには役不足だろうけど階層型で完成度高くてフリーで手に入るのといったらこれが一番だし
でも本にしてもネットにしても情報が少なくてほんと困る
暗中模索きつすぎ
0171NAME IS NULL垢版2008/12/21(日) 19:22:23ID:???
技術本が今度出るらしいよ
0172NAME IS NULL垢版2008/12/21(日) 23:50:57ID:???
それはかなりうれしい
進捗確認できるページある?
0173NAME IS NULL垢版2008/12/22(月) 22:40:40ID:???
>>172
進捗はさすがに公開されてないんじゃ・・・
0174NAME IS NULL垢版2008/12/26(金) 19:40:03ID:???
cacheデベロッパーズガイド

来たね
0176NAME IS NULL垢版2008/12/27(土) 13:13:19ID:???
目次見た。
サーバーサイドプログラミング講習+ZEN講習くらいの内容か
0177NAME IS NULL垢版2009/01/12(月) 16:45:13ID:???
cacheで作った物って他に転用効かないから、正直あまり使いたくないな
統合環境も使いにくいし古臭い
0178NAME IS NULL垢版2009/01/13(火) 06:01:44ID:1vVFDDP2
オープン・ソース M(Mumps)

GT.M

ttp://www.fidelityinfoservices.com/FNFIS/Markets/NonfinancialIndustries/Healthcare/gtm/
ttp://sourceforge.net/projects/fis-gtm/

Mumps II

ttp://www.cs.uni.edu/~okane/mumps.html

その他
ttp://mumps.sourceforge.net/
0180NAME IS NULL垢版2009/01/22(木) 13:58:51ID:GTw1AI0l
でぃーぷ・しーの完成度ってどうよ
0181NAME IS NULL垢版2009/02/04(水) 22:42:15ID:???
>>180
ISJのページ見てもどんな製品だかよくわからん。
0182NAME IS NULL垢版2009/02/19(木) 00:23:54ID:???
アンサンブルだってそうさ。
0183NAME IS NULL垢版2009/02/19(木) 21:45:09ID:???
ensembleはほら、BizTalkとかWebSphere MQとかと一緒でEAIの一種じゃん。
BPELのサブセットもあるし。
0184NAME IS NULL垢版2009/02/25(水) 19:40:10ID:???
アンサンブルやディープシーのグラフ(SVG)で日本語出せないのはなんとかならんのか。
Flashにすればいいのに。
0185NAME IS NULL垢版2009/02/26(木) 02:34:04ID:???
なんともならんよ。

大体アドビがすでにIEのSVGプラグイン放棄してるから今後もう使える望みはない。
ISもいつまでマイクロソフトのせいにして逃げるつもりかね。
しまいにゃ基幹で狐使えとか言うし狂ってるとしか思えない。
大体アンサンブルだってマトモに使えるアダプタがODBCのみとはどういう事?
使えない機能満載にもかかわらずあのトンデモ価格での提供は、本気で日本で商売する気あるとはとても思えない。
0186NAME IS NULL垢版2009/02/26(木) 23:00:51ID:???
狐って火狐?IEでしか動きませんって聞いた気が。別の狐の話かな。
1億するWebMethodsよりは安いけど、大して安くはないね>Ens

ところでさ、>>174の本にCacheSQLも載ってるんだけど、DDLについて一カ所だけ触れて「後で説明」って
書いてあるんだけど、説明が見つからないんだよね。
俺の見落としかな? cacheでDDL書く奴もあまりいないんだろうけど。
0187NAME IS NULL垢版2009/02/26(木) 23:15:59ID:???
狐はやサファリなんかは標準でSVG対応してるからなあ。
しかし、ディープシーのインターフェースがIEしか対応していないのも事実。実際狐だとログインが出来ない。しかしグラフは日本語表示ができない。JIS2004フォント入れてなくてもダメ。
アンサンブルは狐だとプロダクション管理画面はまあまあ使えるが、そもそも管理ポータルの動きがかなり怪しい。
早い話が全ての機能がマトモに動く環境がほとんどないという素晴らしい製品という事。
0188NAME IS NULL垢版2009/02/27(金) 17:09:29ID:???
SVG はさ、SVG で保存して、アドビのソフトでSVGで開いても、ちゃんと表示されない。
IEのSVGプラグインで表示どころか、イラレでSVG の画像部品作る事ができない。
SVG の部品作成ソフトが欲しいところ orz
0189NAME IS NULL垢版2009/03/03(火) 08:56:52ID:???
死んだ規格にこだわっても何も良いことないのにねぇ。
そんなことよりキャシェの基本機能や性能をさらに上げた方がもっと効果的に他のDBより差別化できるのにね。
今のISの戦略は我々がキャシェに求めているものとはかなりかけはなれたモノだよ。
0190NAME IS NULL垢版2009/03/03(火) 21:23:33ID:???
死んだ規格といっても、M言語を捨てたらそもそも存在価値がなくなるんじゃ?
0191NAME IS NULL垢版2009/03/03(火) 22:53:41ID:???
SVGの事じゃね<死んだ規格

CSPとかZENは見直して欲しいかなぁ。セッション維持し続けてライセンス食いつぶすし、Webライセンス高いし。
おまけにC/S間独自っぽくてjQueryとか他所のライブラリを食い込ませる余地がないし。
ASP.NETですらjQueryサポートしてるのに。

WebServiceは割と楽だけど、投げたオブジェクトがCacheインスタンスになった後、更新に使えないのが不満。
新規インスタンスにしかならないから、OpenIdでロードしてプロパティ代入して、とかやらんとならん。

結局、cacheになって追加された機能って中途半端なものばっかり。
0192NAME IS NULL垢版2009/03/04(水) 13:38:31ID:???
せめてSQLエクスプローラだけでも復活してくれ。
あの糞ポータルは生産性悪すぎ。
0193NAME IS NULL垢版2009/03/04(水) 21:40:22ID:???
>>191
どうみてもSVGよりMの方が死んでますがなw
0194NAME IS NULL垢版2009/03/07(土) 21:48:39ID:???
>>193
よせよ、これからも暫くつきあうんだから。

とりあえず、newを排除できたんだからCOSは評価してもいいと思うんだ。
0195NAME IS NULL垢版2009/04/17(金) 15:18:20ID:???
エラーメッセージは何とかならないのかな。
mac形式やcls形式で作ってるのに、エラー行はint形式での位置を通知されてもねぇ。

undefの変数が分かるようになりました、って今まで分からなかったのか。
0196NAME IS NULL垢版2009/05/20(水) 20:56:15ID:N4EG5LIu
これrow_number使えんのか。
21件目から30件目、とか取得したい場合どうするの?
select top 30 ....
where not exists
(
select top 20 ...

みたいにするの?
それとも何か専用の書き方がある?
0197NAME IS NULL垢版2009/05/21(木) 21:57:57ID:???
無い。TOPはあるけどOFFSETが無いから無意味。not existsでできた?

やるならQueryの中で一部を切り出すしかない気がするんだけど、SELECT句のカラムを適切に
設定した%SQLQueryを生成する方法がリファレンス等を読んでもよくわからない。
0198NAME IS NULL垢版2009/05/24(日) 00:58:13ID:???
一旦全結果セットとってから、抽出。
あまりにも膨大な結果セットになる場合は、取得範囲以外を切り捨てちゃう方法があったはず。
(多分 row num より効率が良いかも)

row num が使えるDBも内部では同じ事しているから、row num が使えるだけ。
まー、row num が使えると便利だけど。
0199NAME IS NULL垢版2009/06/04(木) 11:43:47ID:???
スタジオでINTルーチンをデバッグしようとすると
「エラー#6704:ターゲットがデバッガから終了しました」
ってなる。
もう一回続けてデバッグをしようとすると
「6707」って出るんだよな..

CACHE2008でファイアウォールもOFFなんだが、
何か設定がたりないのか...
誰か教えて〜
0200NAME IS NULL垢版2009/06/28(日) 16:46:47ID:???
すみません。
質問ですが、ObjectScriptは、M Scriptの発展型なのでしょうか?
ObjectScriptとM Scriptはどのような違いがありますか?
0201NAME IS NULL垢版2009/06/28(日) 18:58:57ID:???
PUBLIC宣言した変数以外ローカル扱いするプロシージャがある。実質New不要。
クラス定義ができてそれを扱える。クラス定義は内部でCOSに変換される。同じようにSQLも変換される。
ブロック構文が使える。if {} elseif {} else {} とか while {} とか。ブロック構文は$Testを無視する。

このへんかな、大きな違いは。
0202200垢版2009/06/28(日) 21:00:50ID:???
>>201
ありがとうございました。
0203201垢版2009/06/28(日) 21:43:06ID:???
>>202
逆に私はCOS以降から入った人なので、知識としてif<sp><sp>else<sp><sp>とかがあるとは知っているけど、使いこなせない。
素のMのソースはマジ読めない。Mべったりの人は他にいると思うので、まだ大きな違いがあるなら、そちらの人が指摘してほしい。

個人的には、ブロックの導入が最大の違いだと思う。プロシージャも新ifも、ブロック構文が前提だから。
0204NAME IS NULL垢版2009/06/29(月) 22:32:06ID:???
ああ、1日目は最初10分おきでやってたし
2日目は21:30スタートだったけど
今日は9:00スタートで2回戦は23:00のままだから結構開くんだ。

明日からは新馬戦は21:30にしよう。
0205204垢版2009/06/29(月) 22:34:22ID:???
すみません誤爆です
0206NAME IS NULL垢版2009/07/03(金) 21:09:02ID:???
こりゃすごいね。

こんな言語よく残ってたもんだ。
0207NAME IS NULL垢版2009/08/21(金) 01:07:47ID:???
ぜんぜん進んでないww
誰もいないのかな??

cache'2008も出たことだし、今後のことをきいてみたかったのに・・・
0208NAME IS NULL垢版2009/08/21(金) 01:27:07ID:???
ど素人なんでROMってる
自分で組む参考にしようと常駐してるけど本当に進まないな
階層型DB選ぶなら大体これだろうと思うんだけどみんなリレーショナルなのか
0209NAME IS NULL垢版2009/08/22(土) 01:07:45ID:???
俺もどしろーとww

でも、、、個人レベルならcacheはあんまりメリットのでは??
0210NAME IS NULL垢版2009/10/05(月) 21:54:23ID:???
転職してこれ使うことになった
自分の発想にすごい合ってるかも

だがマイナーなんだなぁ……
0211210垢版2009/10/20(火) 01:35:31ID:???
何かだんだん慣れてくると癖になるな……
恐ろしいほど早いし。

ただIsolation Levelが気になる……SQL Serverで言うREAD COMMITTEDなんだな……
0212NAME IS NULL垢版2009/12/13(日) 21:36:24ID:???
気にはなってるんだよねぇ。これ。
でも情報が少なすぎて。
0213NAME IS NULL垢版2010/01/08(金) 17:14:46ID:???
クラスからルーチン(.int)を呼んで、引数渡して、戻り値受け取りたいんだけど可能?
0214NAME IS NULL垢版2010/01/08(金) 21:51:35ID:???
なんで出来ないと思うの?
0215NAME IS NULL垢版2010/03/30(火) 20:49:18ID:???
ええいオプソのオブジェクトDBはないのか!
0216NAME IS NULL垢版2010/04/07(水) 20:46:27ID:NYXih7+d
>215
Zope
0217Real垢版2010/04/20(火) 11:09:19ID:M1Cs/TQ3
キャッシェ・・良い商品だけど価格をそろそろ見直さないと使えないです。
高すぎる。
0218NAME IS NULL垢版2010/05/19(水) 19:59:56ID:???
駄目元で会社に提案してみる
0220NAME IS NULL垢版2010/06/24(木) 22:39:56ID:i9ShDT1O
$o
0222NAME IS NULL垢版2010/08/04(水) 12:33:56ID:M4SASUy+
>>221
SUBSCRIPT
0223NAME IS NULL垢版2010/08/19(木) 08:47:10ID:T+XFoJ6i
M言語のすばらしさは、それを使った人にしか理解できないと思います。
EXCELやAccessの手軽さで、ど素人でも簡単な講習でプログラムを
組むことができるのです。

しかもそのDB構造は堅牢で理解しやすいツリー構造で容量を消費せず、しかも
アクセススピードか速い。またデータの型を気にする必要も無い。

こんなプログラミング言語がCOBOLやFORTLANの時代に在ったなんて
信じられない。

誰か、UBUNTU上で日本語でフリーで使えるM言語を開発して欲しい。
0224NAME IS NULL垢版2010/08/21(土) 10:00:56ID:???
Mは嫌だな。
使うならCache Object Scriptがいい。
ブロック構文も使えない言語なんて……
0225NAME IS NULL垢版2010/08/22(日) 13:49:52ID:???
>>223
フリーマンプスというイスラエル産のオープンソースがあってな
0226NAME IS NULL垢版2010/10/16(土) 15:42:40ID:qR1fvDKl
$p
0227NAME IS NULL垢版2010/10/22(金) 18:42:34ID:B+VSoYR1
$o
0229NAME IS NULL垢版2010/10/27(水) 12:39:38ID:WT/4Uyix
$h
0230NAME IS NULL垢版2011/01/15(土) 21:42:54ID:???
だれか商用でもオープン系でもいいから、ガチでSQL性能比較した人いない?
それともみんなSQLは捨ててMUMPSとして使ってるの?
0231NAME IS NULL垢版2011/04/24(日) 21:16:54.43ID:5RBkqyjJ
誰か居ない?
0233NAME IS NULL垢版2011/04/27(水) 00:56:48.59ID:???
>>232
人居ないと思ってた・・・
ありがとう


誰か分かる人いるならCache'でM言語のご教授してくだされ
0234NAME IS NULL垢版2011/04/27(水) 13:52:46.62ID:???
もう一人いるぞ
Mって事は昔のソースか?Mシステムのメモ帳でggr
0235NAME IS NULL垢版2011/04/27(水) 22:18:38.87ID:???
>>234
昔のが分からないけれども、Cache ObjectScriptです
入門とメモ帳はよく読んでますが、理解が悪いです・・・
0236NAME IS NULL垢版2011/04/28(木) 01:00:36.36ID:???
>>235
>>200-203辺りの違いは分かってる?

講習を受けるだけでかなり理解が進むんだけどな
俺らIT関係の単価考えたら二万は安いだろ
ただ、まともに理解するには管理コースとかサーバーサイドプログラミングも必修
0237NAME IS NULL垢版2011/04/29(金) 00:55:53.43ID:???
>>236
ある事情によりMをいきなりやっている状態なもので分かっていませんでした。
講習を検索してみても現在予定
最近の見当たらなかったです。見落としていたらすみません。
それと講習がやってても時間があるかどうか・・・
0238NAME IS NULL垢版2011/09/10(土) 09:18:52.41ID:x2yWFr7X
test(){
}

とかで、test(a)やtest(a,b,c) みたいに引数の数が分からない場合、どのように取得すればよいのでしょうか?

javascriptの arguments や perl の @_ みたいなものが無いかな・・というイメージなんですが。
0239NAME IS NULL垢版2011/09/10(土) 20:29:54.55ID:x2yWFr7X
変数名に、val_ref みたいにするとエラーになるんですが、変数名に _ は×なんでしょうか?

実際にやってみてダメなので、ダメなんだろーなーとは思うんですが・・
0240NAME IS NULL垢版2011/09/10(土) 20:34:51.67ID:x2yWFr7X
変数定義を必須にするようなオプションはないでしょうか?

スペルミスとかで変数名間違ってもそのまま通ってしまうのでちょっと不安で。

もしくは局所化でもいいんですが。

javascriptでの以下みたいな
(function(){
 var test = '';
 ・・・
})();

せめて、コンパイル時に warning ででも教えてくれるような機能があれば。
0241NAME IS NULL垢版2011/09/10(土) 22:51:48.88ID:x2yWFr7X
Cach? のスタジオで ctrl+z で変更を戻すときに量が多少多いと微妙に間違って戻ってしまうのでちょっと困っているのですがなんとかならないでしょうか?

今のところ解決方法が分からないので別のエディターを使ってコピペしてるんですが、面倒くさくて。
0242NAME IS NULL垢版2011/10/02(日) 01:39:30.13ID:vopaYa44
キャシエの噂を聞きつけてWin評価版入れてみ た。 裏でApache動いてるみたいだけど、評価版でも リモートからWebアプリにアクセスできるのかな?
0243NAME IS NULL垢版2011/10/04(火) 11:52:50.95ID:???
メンテを依頼された客先のシステムは
C30WとかいうVT100のエミュレータでアクセスしてる。
この制御コード変換?に%NDS.obj NSYS.obj というのを
使っているんだけど全く資料がなくて作成元も不明
どこかに落ちてないですかねえ
0244NAME IS NULL垢版2011/10/04(火) 23:59:36.39ID:???
>>238
javascriptやargumentsに詳しいわけでもないし、
あまり詳しいわけじゃないから間違ってるかもしれませんが、、

関数を作りたいのでしょうか?
それでしたら、関数の引数をあらかじめ、渡される予定の最大数の引数で作ってしまえばいいかと思います。

で、呼び出し元で想定している、最大の引数の数を超えない引数を超えない範囲で
関数呼び出ししてあげればいいのではないでしょうか?

つまり、関数を以下のような形でつくって、、、

TEST(a1,a2,a3)
S a1=・・・

以下で呼び出す。

S X=$$TEST(X,Y)

この場合、a3が定義されませんが、オプショナルということで
$G()を使用しておけばいいかと思います。
0245NAME IS NULL垢版2011/10/05(水) 00:21:47.55ID:???
>>239
連投スマヌ。。。

"_"(アンダーバー)はダメだと思います。
というのも、"_"はCacheで接続子としての役割があるから。

たとえば、A="ABC",B="DEF"のとき、A_Bは変数としては扱わず、
"ABCDEF"として解釈するってこと。

>>240
そんな機能あったら便利だねー
あったら、教えてちょ。
0246NAME IS NULL垢版2011/10/10(月) 20:09:15.41ID:eLCiVj2H
InterSystemsのDocBookに「ページに書式が含まれている場合・・」のように書いてあって、

"書式"ってなんだろうと思ってたら、

どうやら、formタグ(<form>) のことっぽい。
0247NAME IS NULL垢版2011/10/19(水) 19:31:47.75ID:???
デアゴスティーニから送り出された新たな週刊ロボット。
70巻を予定。今回もサーボは焦げるのか・・・
ロボ初心者も多く参入するであろうこのシリーズ、初心者は謙虚に、
玄人は寛容にお願いいたします。

デアゴスティーニ
http://deagostini.jp/rbx/
0248NAME IS NULL垢版2011/11/08(火) 09:16:18.05ID:???
ObjectScriptで文字列の抜き出し(VBでいうRight関数やMid関数)を行う関数ってないのでしょうか?
$EXTRACTTや$LENGTH組み合わせて自前で作るしかありませんか?
0249NAME IS NULL垢版2011/11/13(日) 04:08:29.01ID:???
>>248
$Eでできるのではないでしょうか。
第3引数を渡せば、Mid関数と同等の処理を行うことができます。

s TEST="1234567890"
w $e(TEST,5,7)

と実行すると"567"が取得できます
0250NAME IS NULL垢版2011/11/20(日) 20:22:11.23ID:???
>>249
亀ですがありがとうございます。
何がしたかったかというと、桁数決めて0埋めをしたかったのです(123456 ー> 0000123456みたいに)。
0251NAME IS NULL垢版2011/11/21(月) 01:46:35.64ID:+w7X/VvA
>>250
$Jと$TR組み合わせればできるよ
0252NAME IS NULL垢版2011/11/21(月) 10:12:11.03ID:GBD4WTZR
>>251
まさにこれです!シンプルでいいですね。
ありがとうございました!
0253キューブ垢版2011/12/14(水) 22:21:47.62ID:9bue5U6u
オラクルにsqlゲートウェイで接続する場合、異常におそくないですか?
0254NAME IS NULL垢版2012/01/04(水) 12:05:18.68ID:EC3mpfty
ZEN+Object Scriptでファイルのアップローダー的なプログラムを作成したいのですが(ローカルファイルをサーバ内の任意フォルダにコピー)サンプルプログラムなどでこういったコードが使われているものってありますか?
0255254垢版2012/01/04(水) 15:01:46.12ID:EC3mpfty
補足ですが、ファイルを%FileBinaryStreamとしてDBに格納するよりも、ファイルのパスのみDBで保持する方法のほうが望ましいです。
どうかよろしくお願いします。
0256NAME IS NULL垢版2012/01/05(木) 09:28:31.24ID:???
>>253
マスターの連動とかやってるけど遅くないよ
そもそもあれってODBCでしょ?
手動で遅くないか試したら?
あとはサポートに聞けばいい

>>254-255
DBに保存するのは%GlobalBinaryStreamでしょ
%FileBinaryStreamなら保存先はファイルパスをしていするはず
ZENは知らないや
0257254垢版2012/01/06(金) 07:19:49.06ID:???
>>256
てっきり%FileBinaryStreamがファイルそのものの保存と思ってました。よく見たらドキュメントのストリームの解説に
書いてありましたね。不勉強でした。
あとCSPのサンプルの中にuploadのテストページがあったのでソースを弄ってみることにします。
有難うございました。
0258NAME IS NULL垢版2012/03/26(月) 14:34:50.54ID:7k8yEe44
ZENでフォームからのPOSTを受診しようとしましたが、以下の方法ではどうもうまくいきません。どなたか受け取る方法を教えていただけないでしょうか?

送信側(フォーム部分のみ抜粋):
<form id="frm" name="frm" method="post" action="test03.test.cls">
<text id="hoge" name="hoge" size="20" />
<button id="bt" name="bt" caption="送信" />
</form>

受信側(メソッドのみ抜粋):
Method frmrecieve() As %String [ ZenMethod ]
{
Set hogehoge= $GET(%request.Data("hoge",1))
quit hogehoge
}
0259258垢版2012/03/26(月) 21:09:41.72ID:7k8yEe44
<button id="bt" name="bt" caption="送信" />は
<submit id="bt" name="bt" caption="送信" />
のコピペミスでした。失礼しました。
よろしくお願いします。
0260NAME IS NULL垢版2012/04/15(日) 02:26:07.89ID:3ZP5sDT0
Zenレポート使ったことある人います?
0261NAME IS NULL垢版2012/06/12(火) 20:56:13.78ID:Y/iZQcHh
速い速いっていうけど、ドキュメントのページかなり遅いんだよね。
0262NAME IS NULL垢版2012/06/12(火) 23:55:43.67ID:???
Symposia行った? DeepSee同梱って、あれライセンス料取らないの?以前は確かキャシェに含まれるけどライセンス料別って言ってた気がするんだけど。
0263NAME IS NULL垢版2012/08/29(水) 23:27:49.76ID:cEDQW9CT
切り上げとか四捨五入とかどうやればいいんでしょう?
0265NAME IS NULL垢版2012/08/31(金) 00:52:26.78ID:viaX34tp
切り上げが無いみたいなんですけど・・

四捨五入は助かりました!
0266NAME IS NULL垢版2012/09/03(月) 16:03:19.48ID:Ht0AR/El
1で割って余りがあれば、+1すればいいんかな?
#で余り、\で商なので

if x#1>0 { S x=x\1+1 }

マイナスの場合は最古の+1を-1にすればよいかと
0267NAME IS NULL垢版2012/09/07(金) 00:13:31.78ID:O39K3gJ5
どうもです。
素晴らしい。ありがとうございます。ceil や round ぐらい言語にあって欲しいですけどね・・
0268NAME IS NULL垢版2012/09/11(火) 23:55:48.58ID:KR0RSg0X
ん・・。やっぱり全く良さが分からないんですけど、
Cache'にするメリットって誰か教えて下さい。
0269NAME IS NULL垢版2012/09/12(水) 00:29:32.51ID:???
Mで書かれてる古いシステムを動かせる、くらいかな。
0270NAME IS NULL垢版2016/06/11(土) 13:03:21.03ID:Y9yMW2vW
NULL
0273NAME IS NULL垢版2017/10/19(木) 21:52:00.20ID:???
上司から今度使うから勉強しろと言われた…
超初心者なのに…
0274NAME IS NULL垢版2017/12/29(金) 11:11:19.78ID:dtNZwIie
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

96MZ6RMWAH
0275NAME IS NULL垢版2018/02/14(水) 13:34:51.18ID:???
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
レスを投稿する


ニューススポーツなんでも実況