今、VBやJAVAといったプログラム言語が存在していますが、実際自分専用のプログラムを作るとしたらどうすればいいのでしょうか?
たとえばこの世に存在していなく全く新しい言語を作るときとか?
できれば作り方や用意するものなどわかりやすく(できれば専門用語は控えめで)教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

1.目標を立てます


最終的にコンピュータが理解できる言語(機械語)にしますが、とりあえず現
在存在する言語に変換できればいいでしょう。例えば新規言語をC言語に翻訳
できればコンピュータで実行可能です。

2.1.の目標を日本語から英語に変換と例えれば下記2つを解決する必要があります
 1)文法の変換問題    (構文解析で検索すると沢山でてきます)
 2)単語、文字の変換問題 (字句解析で検索すると沢山でてきます)

下記で想像されればいいのではないでしょうか。
 これはペンです。  ->  This is a pen.

但し、これは自然言語の翻訳で例外の発生、単語が複数の意味を持つ、慣用句
など難しい問題が多くあります。
しかし実際のコンピュータ言語ではこの問題がほとんど発生しないように作成
しますので、(設計者=貴方が普通に作成しようとすれば自然とそうなります
)かなり簡単に作成可能です。
また#1の方が紹介されているようにlex(字句解析機),yacc(構文解析機)のツー
ルもありますので作成は容易です。

貴方が一番大変な部分は字句解析と構文解析の規則(ルール)を作成する部分
という事になり、後は外注(ツールを使用する)という形でしょうか。
    • good
    • 0

言語の仕様を決めます。

これがやたら面倒。

言語の解釈するルーチンを作ります。
言語の実行するルーチンを作ります。
必要に応じて.言語の実行状態を監視したり.制限したりするルーチンをつくります(作成したルーチンのデバックルーチンであり.あるいは.ユーザープログラムのデバックるーちんであったりします)。
これらを適当に統合するルーチンをつくります。内容を見て順次解釈して行くインタープリターが作るのには楽でしょう。

こんなところでしょうか。
    • good
    • 0

私もそんなに詳しくないのですが、自分専用のプログラムを作るということは、


自分でプログラム言語の文法を定義するということですよね。

lex や yacc というツールを使うと、比較的簡単に、文法や字句を解析できます。
lex や yacc というのは、コンパイラーを作るためのツールです。
ちなみに、コンパイラーは、人間が書いたプログラムソースをコンピューターが理解できる形式に変換するものです。ですので、プログラム言語の文法の解釈は、このコンパイラーがします。
インターネットで lex や yacc で検索すると、いろいろ説明出てきますので、くわしくはそちらを見て下さい。 (奥が深いので、ここで、すべては説明しきれない。)

yacc の代わりに最近は、bison というツールを使うのかな?
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QAiphone、アンドロイド携帯のアプリはどんなプログラム言語で作られ

Aiphone、アンドロイド携帯のアプリはどんなプログラム言語で作られ、SNSはどんなプログラム言語で作られているのでしょうか。

Aベストアンサー

iPhoneアプリはObjective-C、アンドロイドのアプリはJAVA。
SNSの場合はPerl、PHP、Flashなどが多いと思います。
MixiアプリなんかはFlash。

QWindowsで動くソフトを作るプログラム言語の選定基準は?

こんばんわ。

今まで、VBA程度でプログラムに触れたことはありますが、
今度新しく言語を覚えてみようかな・・・という安易な考えから、
Windowsで単体で動くソフトを作りたいと考えています。(サーバサイドではないという意味と言えば良いでしょうか・・・)
本当はあれこれ試してみれば良いのでしょうが、
言語の選定に困っています。

基本的にはWin98とXPで動くもので、
ネットワーク接続やデータベース接続をしてデータ・ファイルを取得し、
その結果を他のソフトに渡すだとか、変換後のデータをファイルに書き出す・・・なんてのを最初に作ってみようと考えています。

そこで、
VB6なども入手できないようですし、
.NETですと使用するPC全てにFrameworkが必要になってしまいますよね。Win98PCは容量が少ないので、あまり向かない気がしています。
JavaもSDKが必要ですし、そもそも単体で動かすプログラム(exe)のようなものを作れるのでしょうか?
DelphiはIDEが高価すぎて手が出ませんし、
出来上がったソースを見たことがありますが、VBAに慣れていたせいか、違和感がありすぎましてダメでした。

他の言語については触れたことも無いので、
いまいち特徴がわかりません。

プログラム経験のある方は、みなさんどのように自分が使う言語を選んだのでしょうか?
みなさんが使っている言語を選んだ基準や、得意な分野、開発環境の用意のし易さなどを教えていただけないでしょうか?
よろしくおねがいします。

こんばんわ。

今まで、VBA程度でプログラムに触れたことはありますが、
今度新しく言語を覚えてみようかな・・・という安易な考えから、
Windowsで単体で動くソフトを作りたいと考えています。(サーバサイドではないという意味と言えば良いでしょうか・・・)
本当はあれこれ試してみれば良いのでしょうが、
言語の選定に困っています。

基本的にはWin98とXPで動くもので、
ネットワーク接続やデータベース接続をしてデータ・ファイルを取得し、
その結果を他のソフトに渡すだとか、変換後のデータを...続きを読む

Aベストアンサー

>VB6なども入手できないようですし、

MSDNに入れば入手可能です。
VisualStudio.NETのMSDNがついているものを買えば自動的についてきます(実際には手続きが必要ですが。)
http://www.microsoft.com/japan/users/onlinereseller/developer/vstudio2003/
#ちょっとVS.NET自体が高いですが。

>Win98PCは容量が少ないので、あまり向かない気がしています。
Officeなんかに比べればよっぽど少ない気がしますが(^^;;


>JavaもSDKが必要ですし、そもそも単体で動かすプログラム(exe)のようなものを作れるのでしょうか?

開発にはSDKが必要ですが、動作させるためにはJREのみ必要です。JREがインストールされていれば、JavaVM上で動くものは作成可能です(exeとは違いますが)。


>DelphiはIDEが高価すぎて手が出ませんし、

無料でダウンロードできます。
http://www.borland.co.jp/delphi/personal/


>プログラム経験のある方は、みなさんどのように自分が使う言語を選んだのでしょうか?

仕事で使ったからというのが大きな理由でしょうかねぇ?

>VB6なども入手できないようですし、

MSDNに入れば入手可能です。
VisualStudio.NETのMSDNがついているものを買えば自動的についてきます(実際には手続きが必要ですが。)
http://www.microsoft.com/japan/users/onlinereseller/developer/vstudio2003/
#ちょっとVS.NET自体が高いですが。

>Win98PCは容量が少ないので、あまり向かない気がしています。
Officeなんかに比べればよっぽど少ない気がしますが(^^;;


>JavaもSDKが必要ですし、そもそも単体で動かすプログラム(exe)のようなものを作...続きを読む

Qこのようなプログラムを作るにはなんの言語がいいでしょうか?

制限時間があり(10秒・15秒・20秒・30秒など)ます。(カウントダウンをします。)
選択肢はA・B・C・Dの4つです。制限時間が過ぎると自動的に次の問題に行くというようなプログラムを作りたいのです。問題文や選択肢の上には画像も入れたいです。どのようなプログラミング言語が適しているでしょうか?よろしくお願いします。

Aベストアンサー

> CDなどに焼いて配布する予定です。

問題表示、解答を選択、採点するアプリケーション配布が目的と言う事でしたら、こちらのようなクイズ用のシステムを検討されては?

ベクターゲームズTOP>Windows>クイズ・パズル
http://www.vector.co.jp/games/lib/win/game/puzzle/

5TAKU
クイズシステム QUIZMEN
クイズ3

利点としては、
・簡単。
・確立されたシステムである、実績がある。
→自作するよりバグが少ない。
・プラグインなどで機能拡張される事も。
・上のリンク先にあるように、問題集のみをフリー/シェアウェアなどとして配布する展望も。

問題点は、秒読みのシステム、画像の表示などの有無が不明。
気に入らない点があっても、プログラムの修正が効かない。
とかでしょうか。

参考URL:http://www.vector.co.jp/games/lib/win/game/puzzle/

Q以下ようなツールはどのプログラム言語で作るのが向いていますか?

以下ようなツールはどのプログラム言語で作るのが向いていますか?
仕事中にファイル名に日付をつけてファイルを残すことがあり、
ふとプログラミングの勉強を兼ねて、
以下のようなWindowsで使用するツールを作ってみようと考えました。


目的
一時的なバックアップ用にファイル名を変更orファイルをコピーする。

使い方
・ファイルを右クリック
・右クリック後「新規作成->フォルダ」と同じイメージで、
 「アプリ名->ファイル名を変更」 か
 「アプリ名->ファイルをコピー」
 を選択できる。

○アプリ名->ファイル名を変更 を選択した場合、
 選択したファイルの名前に_yymmddを追加した形に変更
ex.
sample.txt
  ↓
sample_100603.txt

○アプリ名->ファイルをコピー を選択した場合
 選択したファイルをコピーし、
 ファイル名を元のファイル名に_yymmddを追加した形に変更
ex.
sampleCopy.txt
  ↓
sampleCopy.txt
sampleCopy_100603.txt

---

今まで、業務でC, C++, Javaでコーディング経験はあるのですが、
Windows関数の呼び出し経験はほとんどありません。
(MFCでは少し実装したのですが・・・)

ちょっと調べた感じだと
ファイル右クリックで表示させるためのレジストリの書き換えと、
ファイル名の変更&コピー程度なので、実装はそれほどむずかしくないかなと考えています。。
皆さんであれば上記のようなツールはどの言語で実装しますか?


今回のツールとは別にスクリプト系の言語を勉強してみようかと考えて
PythonかRubyを勉強してみようか迷っていたところなので、
できれば今までやったことのない言語で作ってみたいのですが、
やはりWindowsアプリはC(++)が作りやすいのでしょうか???

以下ようなツールはどのプログラム言語で作るのが向いていますか?
仕事中にファイル名に日付をつけてファイルを残すことがあり、
ふとプログラミングの勉強を兼ねて、
以下のようなWindowsで使用するツールを作ってみようと考えました。


目的
一時的なバックアップ用にファイル名を変更orファイルをコピーする。

使い方
・ファイルを右クリック
・右クリック後「新規作成->フォルダ」と同じイメージで、
 「アプリ名->ファイル名を変更」 か
 「アプリ名->ファイルをコピー」
 を選択できる。

○アプリ名-...続きを読む

Aベストアンサー

「ファイル名を変更してコピー」のようなことをWindowsで行うのでしたらWSH(Windows Script Host)スクリプトもよいのではないでしょうか。

新たなインストールは不要で、コピースクリプトをエディタで作成し、ショートカットをSendToフォルダに置けば準備完了です。ファイルを右クリックで「送り」ます。

SendToを使わずに右クリックメニューを実現するにはコピースクリプトとは別の実装が必要ですが、WSHはレジストリ操作もできますから、それも不可能ではないように思います(すみませんが私はSendToで済ませているので実装した経験はありません)。

Q(メモ帳 とか)普通の動作をするソフトを作るには、どんなプログラム言語が必要ですか?

Win7 ユーザーで、Java の勉強を始めた者です。テキストファイルのフォーマット変換をするプログラムが、曲がりなりにも動くようになりました。
コンパイルも実行も「コマンドプロンプト」なる真っ黒な画面でやってますが、はたと疑念が生じました。私としては、下記のごときプログラムが欲しいのです。

henkan.exe をダブルクリックすると 「変換」画面が出る
メニューバーで ファイル→開く すると「開く」画面がでる
同じく     編集→ で変換フォーマットを選択
・・・
最後は X で終端。

要する Word2010 とか メモ帳 とか、普通のプログラムのごとき表示・操作をさせるには、当サイトのプログラム一覧(になくても良いですが)にあるどの言語を使うのでしょうか? 教えてください。

Aベストアンサー

Visual Studio Community & Express

Community 2013 update4
を、ダウンロード、日本語化も出来ます。無料です。

では、いかがでしょうか?
MFCが使えるので、使いやすいサンプルを少し変形すればよいと思います。
言語は、C++ です。


人気Q&Aランキング

おすすめ情報