2月14日でDelphi 25周年 103
ストーリー by hylom
当時はOptima++勢だったことを思い出した 部門より
当時はOptima++勢だったことを思い出した 部門より
Object Pascalベースのプログラミング言語およびその開発環境であるDelphiが最初にリリースされたのは1995年2月14日で、今年で25周年になるそうだ。これを記念して、現在Delphiの開発・提供を行っているEmbarcadero TechnologiesのDelphiページでは25周年記念コンテンツが公開されている(Embarcadero日本法人代表によるブログ)。
Delphiの最初のバージョンはWindows 3.1向けの開発環境として登場し、1996年にリリースされたDelphi 2でWindows 95向けの32ビット環境に対応した。現在の最新バージョンは2019年12月にリリースされた「Delphi 10.3.3」で、WindowsだけでなくmacOSやiOS、Android向けアプリケーションの作成にも対応している。
元祖も祝ってあげやう (スコア:0)
(* DelphiがPASCALなのかという議論は敢えてしない *)
PROGRAM AREGE(OUTPUT);
BEGIN
WRITELN('今年はPASCALが誕生して50周年');
END.
Re: (スコア:0)
そのプログラム例でならば、WRITELN文の閉じカッコの次のセミコロンは不要です。
Re: (スコア:0)
で、文を末尾に足したり引いたりするたびに無駄なdiffが発生すると
DelphiもC++Builderも死んだ (スコア:0)
ものと思ってたよ。
ユーザーあてのはがきが毎回違う会社名で来てたけどいつのまにか途絶えて
Re: (スコア:0)
めづらしく実質周忌で無い周年祝いの発信ね
コンテンツ枠じゃないから珍しくもないのか
大学の必修教養で習わされたPASCAL (スコア:0)
なんであんなものやらされてたんだろう
Re:大学の必修教養で習わされたPASCAL (スコア:1)
もともとPascalは教育用に作られたものだと聞くからね。
Re:大学の必修教養で習わされたPASCAL (スコア:1)
考案者であるヴィルト氏によれば、教育用である以外にも実用性をも考慮したとのことで、PascalコンパイラをPascalで記述することでその実証とした、という。
Pascalは教育用に作られた (スコア:1)
ヴィルト博士の著書「The Programming Language Pascal」で Pascal の意図の1つとして "basis to teach programming" と書いている。
https://link.springer.com/chapter/10.1007/978-3-642-59412-0_9 [springer.com]
しかも日本のみと言っているが、英語のページもいくらでも出てくる。
なぜなら噂じゃなくて本当だから。
https://www.tutorialspoint.com/pascal/pascal_overview.htm [tutorialspoint.com]
Re:Pascalは教育用に作られたものではない (スコア:1)
ISOの文書( http://pascal-central.com/docs/iso7185.pdf [pascal-central.com] )にも明示的に
とあるので#3764627は両方ともに根拠のない噂話ですね。
Re:大学の必修教養で習わされたPASCAL (スコア:1)
プログラミングが勉強できるということでものすごくワクワクして受けたPASCALの授業、一番最初のサンプルコードが
writeln('PASCALで助かる');
だったので一気に冷めてしまったのを思い出しました。
Re: (スコア:0)
そこは "Hello world" じゃなきゃプログラミングじゃないよねぇ。
# そういう話ではない
Re:大学の必修教養で習わされたPASCAL (スコア:1)
大学でPASCALやるのは、Wirth氏の「アルゴリズム+データ構造=プログラム」が名著だったからじゃないかと思う。大学時代は、これを教科書に最初のアルゴリズムの講義を受けたし、他のアルゴリズム関係の講義とかでも、PASCALかPASCAL風の疑似コードでしたけど、アルゴリズムの理解、という点ではCよりは良かったと思いますね。お約束が少なく、ほどほどに抽象化されてる分、アルゴリズムに注力できる。
これに、プログラム書法とソフトウェア作法を加えた3冊が、(言語は古いけど、記載内容は今でも通じる)プログラミング向けの名著だと思う。
それと、PASCALで各種アルゴリズムを説明した書籍コンピュータ・アルゴリズム事典 [mie-u.ac.jp]にはお世話になりました。手元に一冊必携。C言語使いだったので、C言語版が出てからは出番が少なくなりましたけど…。
Re: (スコア:0)
プログラマじゃない(なれなかった)私が言うのもお門違いだという批判は甘んじて受ける。
が、Pascalがmother tongueである私には、結局cは無理だった。今さらだが、K&Rの翻訳者前書きで故石田氏が、タイプ量まで挙げてc上げPascal下げを言っていたのは、ひどい言い掛かりだと思う。可読性という観点からすれば、関数名や変数名などを2文字や3文字にしてまでタイプ量を減らすなど、無意味もいいところだ。その上で、cには記号文字多用(これも石田前書きではタイプ量に関して)による読みづらさがある。タイプ量だけでなく、上記石田前書きでは、石田氏のPascal文法の誤解からきたと思われるPascal否定があった。
ま、私が思うcの問題点(もちろん上記以外にもいろいろある)は、大多数のプログラマには大した問題ではなかった。それ故の現在のcの普及だ。デファクトスタンダードを否定する気は一切ない。私にとってはPascalが良かった。それだけ。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
アルゴリズムの根っこの部分をきちんと抽象化して思考してれば言語依存度は低くなると思うの。
職業プログラマではない自分だって,好き嫌いはあるけど,理解できない言語ってないもの。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
プログラミングのお作法教えるだけでは何も身につかないに決まってるというか。IT土方にはアルゴリズムを考える必要はねえ,といわれればそうなんだろうけど。
Re:大学の必修教養で習わされたPASCAL (スコア:1)
コンパイラ作るとかCPU の動作の深いレベルで認識するならそうでしょうけど。
いわゆる高級言語の類いで、通常のプログラミングであれば、いかにやることを記述するか、でしょう。
むしろ文章の組み立てに近くなるのでは? 個人的な感想ですが。
※私個人は理系に分類されるでしょうけどね
-- To be sincere...
Re:大学の必修教養で習わされたPASCAL (スコア:1)
>ま、私が思うcの問題点(もちろん上記以外にもいろいろある)は、大多数のプログラマには大した問題ではなかった。それ故の現在のcの普及だ。
言語としては、PascalがCよりも優れているのは確かだけど、Cの良い点というよりも必要性はUnixというOS資産(プログラム資産)にあったと思う。この利益に対しては、言語の多少の問題は目をつぶられたということだと思う。
つまり、言語の優劣が普及を決めるのではない。何に重用されたかの影響の方が大きいと思う。
Re: (スコア:0)
昔、Pascalで卒論書いた。
幾つか選択肢あったけど、FortranもCOBOLも外したら、結局。
マニュアルなんてあったか? エラー出しながら、覚えた。
ま、Cも似たようなもんか。
Delphiは結局、縁無し。
良かったか、どうかは知らん。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
Turbo Pascalの延長線で一時期触ってましたが,VBよりも筋はいいですよね。
ラピッドタイピングに向いてると思いました。あまり突っ込んで使いはしませんでしたが。
Delphi の思い出 (スコア:1)
「VB の操作性・手軽さで、VC++ の高速性」
でしたからねえ。
VB は画面は手軽に作れるけど速度が出ず(当時のVB はコンパイラがない)、
VC++ は速度は出るけど画面が作りにくい(リソースエディタでちまちま)、
その二つのいいとこ取りのような代物ができたんだ、ですからね。RAD のできるコンパイラなんて、画期的でした。
※速度が欲しいが為にロジック全部 VC++ で DLL 化して、フロントエンドの VB から DLL 呼び出しとかあったなあ……
その後 ver.2 で 32bit 対応して、ver. 3 で DB 対応が入ったんだっけか?
楽しかったなあ、あの頃は本当に。
Nifty-Serve のフォーラムでチャットでコードやりとりしたりとかしてました、当時。
-- To be sincere...
Re: (スコア:0)
なれなかった理由がよくわかる文章ですね。
プログラマにとっちゃタイプ量めちゃ重要なのが理解出来なきゃそら無理だ。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
プログラムって目的さえはっきりしてれば結果はついてくるハズなので。
Re: (スコア:0)
FORTRANでなかったあなたは幸いなり
Re:大学の必修教養で習わされたPASCAL (スコア:1)
FORTRANでなかったあなたは幸いなり
しかし、FORMAT文とか計算型GOTO文とかを駆使するのはそれでそれで面白かった(おいこら)
Re: (スコア:0)
元ACです
そういえば専門に進んだら今度は必修の計算物理がFORTRANでした
思い出させてくださってありがとうございます(泣
Re: (スコア:0)
Cというアセンブラ言語を学ぶよりは・・。
# プロセッサ概論より先に、Cの授業があるのはおかしいよ。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
って感じでしたけど,やっぱマシン語やってるかどうかなんすかね,Cへの耐性って。
Re:大学の必修教養で習わされたPASCAL (スコア:2)
ゲームフレームワークはC#メインなので,もうポインタはいいかな,という感じではありますが,
いざとなったら使える強みはある。
本物のプログラマはPascalを使わない (スコア:0)
本物のプログラマはPascalを使わない [wikipedia.org]からって聞こえ良さに教育用と言ったのを真に受けたのでは
Pascal (スコア:0)
MSX-DOSにてTurbo Pascalで遊んで、
MacintoshにてLightSpeed Pascal、THINK Pascal、CodeWarrior Pascalで遊ぶ。
ごめん、Delphiは触ったことないや。
Pascal文字列 (スコア:0)
今じゃ長さが足りない気がする
Re: (スコア:0)
言語仕様で文字列の内部構造が定められてるの?
Re: (スコア:0)
先頭1バイトが文字列長。
Re:Pascal文字列 (スコア:1)
Re: (スコア:0)
まぁ、でもだいたいの言語では、言語仕様で内部構造も決まってる。(正確には内部構造的に「そう見えなきゃいけない」だけど)
Re: (スコア:0)
Long String型が入ったので、2GBまでいくよ
http://docwiki.embarcadero.com/RADStudio/Rio/ja/%E6%96%87%E5%AD%97%E5%... [embarcadero.com]
Re:Pascal文字列 (スコア:2)
Turbo Pascal 5.0でunitが入って、5.5でObject Pascalになった。
アンダース・ヘルスバーグ (スコア:0)
ユーザー(この場合開発者)の○○めんどくせ〜な、コードの長さを減らすポリシーはホント変わりませんね。
#Javaに行ってたらどうなってたのかは気になる
高すぎて買えなくなった (スコア:0)
無料版と有料版の落差凄まじいし有料版は個人で買えるようなお値段じゃなくなっちゃった
Delphi 7の頃みたいな1桁万円で買える間を埋める商用エディションつくってほしい
Re: (スコア:0)
今はProfessionalと完全に全く同じ無償版あるよ
ライブラリソースも付いてるしWin,macOS,iOS,Androidの開発できるよ
Delphi 1.0の16ビットアプリ (スコア:0)
Windows10で動かないので、どうしよう。
Re:Delphi 1.0の16ビットアプリ (スコア:1)
D2か3でコンパイルすれば32bit化は割と容易。
余裕があるならD7まで持って行くのがベター。
Re:Delphi 1.0の16ビットアプリ (スコア:1)
Windows 10 だからではなく「64bit版OSだから」ではないですかね?
-- To be sincere...
25年の間に会社が変わりまくった (スコア:0)
Borland → Inprise → Borland → CodeGear → Embarcadero
# 未だにBorlandって言いたくなる
Re: (スコア:0)
残念ながら会社は一回しか変わってないよ
エンバカデロに買収された一回だけ。
Re:25年の間に会社が変わりまくった (スコア:1)
すごいややこしいのだけれども、
Borland
→ Inprise(1998年にBorlandから名前変更)
→ Borland(2001年に社名を戻す)
→ CodeGear(2005年にBorlandから子会社化)
→ Embarcadero(2008年CodeGear買収)
と、CodeGearまでは、Borland社内の組織変更(?)により
開発元が異なります。
# "→"を買収だけだと思ったらだめだよチミ~。
Re: (スコア:0)
フィリップ・カーン追放あたりから傾いてたのか、傾き始めてたから追放劇が成立したのか
まあCDとかついてきてたのはちょっとあきれたけど
Re: (スコア:0)
働かないフランス人てか
Re:Delphiによる成果物の例 (スコア:1)
あと XP ではお世話になった「窓の手」もそうだったかと。
※Nifty-Serve ユーザーにとっては AirCraft があったなあ
-- To be sincere...