2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

tcl/tkは何故メジャーになれなかったのか?

1 :デフォルトの名無しさん:2017/12/18(月) 19:16:57.78 ID:3CIRnvx7.net
デプロイ早くて使いやすいのに

2 :デフォルトの名無しさん:2017/12/19(火) 00:24:02.18 ID:A9cJj4+0.net
名前が可愛すぎたから

3 :デフォルトの名無しさん:2017/12/20(水) 23:02:09.96 ID:rennkEVj.net
あまりにもダサイ

4 :デフォルトの名無しさん:2017/12/21(木) 04:33:14.63 ID:FYclZgqn.net
>>3
どこら辺がダサいか具体的に言ってくれると助かる(・´з`・)

5 :デフォルトの名無しさん:2017/12/22(金) 22:06:35.36 ID:NgWkt9+7.net
なんか妙に取っ付きづらかった印象がある。

関数型言語の皮を被った手続き型言語だよね。

6 :デフォルトの名無しさん:2017/12/22(金) 23:31:45.33 ID:6BLzPHcG.net
TclがTkの足を引っぱっていたから

7 :デフォルトの名無しさん:2017/12/23(土) 11:55:12.28 ID:zCitPEVo.net
TkのGUIは使いづらい感じがしてたけど、簡単に作れるところはメリットだと思う
Ruby/TkとかTkinterで使ってる人も多いだろうし
ただしTcl、テメーはダメだ
Tkのために覚えようと思う言語ではない

8 :デフォルトの名無しさん:2017/12/24(日) 11:42:46.45 ID:RhTtaVz5.net
>>5
>>6
>>7
tclの変数の値は全て文字列ってところと文字列の展開に関わるあれこれが足引っ張ってんのかな…

9 :デフォルトの名無しさん:2018/01/08(月) 10:49:37.25 ID:szpKYJOz.net
半導体のデバイス設計ツールのスクリプトがTclなんだからメジャー
一般に普及する必要はない

10 :デフォルトの名無しさん:2018/01/08(月) 10:50:25.68 ID:szpKYJOz.net
デプロイ早くて使いやすいから 半導体のデバイス設計ツールのスクリプトがTclなんだよ。
それで十分だろ

11 :デフォルトの名無しさん:2018/01/08(月) 10:53:40.57 ID:szpKYJOz.net
Cとの親和性高いからRで使われてるんだよRがメジャーな限りtcl/tkもメジャー

12 :デフォルトの名無しさん:2018/01/08(月) 21:18:31.80 ID:r3NCGPm5.net
SQLiteもTclの副産物だろ。

13 :デフォルトの名無しさん:2018/01/20(土) 13:35:33.32 ID:5zEZap2N.net
test

14 :デフォルトの名無しさん:2018/02/14(水) 04:15:11.10 ID:HSmvmYSu.net
普及として考えられるのが (IMHO)、
- 未だに Android ネイティブで動作しない。
- ライブラリのインデックスが国内にない。
- 資料どこにあるかわからない。
- WSH や DOS バッチの完全な代替にならない (エスケープシーケンスとキャンバスでは手軽さが違う)
Curses TK, tcl/ck あるが古くなりすぎ。

かつて Ocaml+ Tk で mmm (も〜) なんてウェブブラウザ書いていた人もいたんだけどねえ……。この没落ブリーフ。

15 :デフォルトの名無しさん:2018/02/16(金) 06:40:41.34 ID:W1XJdyx1.net
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆

16 :デフォルトの名無しさん:2018/03/25(日) 18:04:34.11 ID:qleen6XJ.net
せっかく C から生のまま使えるんだから
tcl じゃなくて tk の部分だけ別の文法で wrap 出来ないかな

17 :デフォルトの名無しさん:2018/05/23(水) 20:03:28.19 ID:Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

L00YT

18 :デフォルトの名無しさん:2018/05/28(月) 23:19:29.64 ID:jz5JC+Y6.net
>>16
Ring 言語を使えばキーワードの再定義もお好みで可能だな。まだクセがあるから万人向けではないが。

つか UTF-8 に対応していない海外製の処理系を手っ取り早く UTF-8 対応にするためには Tcl 使えそうだが、そんな使いかたがあるなんて聞いてないな。
Qt など GPL/LGPL の採用できない現場でライセンスの緩くて枯れている便利な文字列処理ライブラリとしてなら、まだまたま活路は残っているか。

19 :デフォルトの名無しさん:2018/05/29(火) 11:36:13.83 ID:QKhV4oKb.net
>>16
pythonとCとpythonモジュールでいいやん

20 :デフォルトの名無しさん:2018/07/04(水) 22:44:22.50 ID:gFgZc5FG.net
OXU

21 :デフォルトの名無しさん:2018/12/06(木) 11:03:51.57 ID:ZtWhQkAF.net
>>18

22 :デフォルトの名無しさん:2018/12/06(木) 11:06:48.11 ID:ZtWhQkAF.net
>>18
OSS ライセンス適用されるの無料版たけでじゃないの?

23 :デフォルトの名無しさん:2019/01/25(金) 09:38:01.69 ID:nTExwXep.net
ガベコレまわりがPythonに比べてルーズな気がするが
緩いから使いやすいってことで良いのかな?

24 :デフォルトの名無しさん:2019/01/25(金) 14:35:22.51 ID:EnRgcOgq.net
>> arrayName = Tcl_NewStringObj( "RivetDirConf", -1 );
>> Tcl_DecrRefCount(arrayName); /* when done */
>> return;
>> Explanation: there is no way for Tcl to know about the scope of
>> visibility for arrayName. It's your job as a Tcl C extension writer
>> to manage the lifetime of Tcl_Obj objects.

> According to the man page:

> Tcl_NewStringObj and Tcl_NewUnicodeObj return a pointer to a
> newly created object with reference count zero.

True, but there's no garbage collector in Tcl looking for Tcl_Objs's
with refcount == 0 for freeing. You need to call Tcl_DecrRefCount
on the object to bring it to the attention of the releasing mechanism.

25 :デフォルトの名無しさん:2019/01/25(金) 16:48:08.46 ID:5BmC9EYX.net
>>16
これずっと言われてるけど結局メンテが続かないんだよなあ
多分メンテの大変さと使われ具合が割に合わない
tcltkもあんまバージョンアップしないにもかかわらずだ

tkinterは安定して使えてるようだけど
やっぱあんま使われてないみたいだしいつ分離してもおかしくない

26 :デフォルトの名無しさん:2019/01/25(金) 16:53:22.95 ID:EnRgcOgq.net
pythonコードをC/C++で描いてtkinter使えば医院で内科医?

27 :デフォルトの名無しさん:2019/02/07(木) 11:47:42.07 ID:wnXC6Stz.net
set abc {ABC}
after 1000 {puts $abc}
set abc {AAA}
puts {DEF}

これだと

DEF
AAA

って出力になるから $abc が遅延評価されてるのは判るんだけど

set abc {ABC}
pack [button .hoge -text hoge -command {puts $abc}]
set abc {AAA}

だとボタン押したときに実行されるのが
ABC
の方なんだよね

28 :デフォルトの名無しさん:2019/03/04(月) 18:21:58.01 ID:uc0eUeRV.net
>>1
そもそも言語からして、普及していた言語とはかけ離れた独自言語であった
時点でメジャーになるわけ無いのに、>>1 の感覚が分からない。

29 :デフォルトの名無しさん:2019/03/05(火) 03:36:05.49 ID:VDry4yCP.net
るbyディスるのは止めれ

30 :デフォルトの名無しさん:2019/03/05(火) 16:21:21.04 ID:01ls3eLR.net
>>29
Rubyは、BATファイルよりは強力だったので、Better BAT として使ってきた。
それは TCL/TK にはあてはまらない。

31 :デフォルトの名無しさん:2019/03/06(水) 18:56:42.08 ID:nP+qIuYQ.net
Luaの方がマシかな

32 :デフォルトの名無しさん:2019/03/07(木) 11:55:02.62 ID:MOWN2E6p.net
まず、CGIを動かすための無料の言語としてperlがあって、perlには関数定義
の仮引数の書き方や参照渡しの書き方に問題があった。Rubyは、
perlのリストやハッシュなどの便利さはそのままに、それらの不具合を修正し、
ブロック関数などの新しいアイデアも導入した。また書き方やライブラリ
の感覚が perl に似ていたため perl を覚えた人には以降が簡単だった。

ところが、Tclにはそういうものがなかったのではないか。全く新しい言語を
覚えるのは意味がなく苦痛。

33 :デフォルトの名無しさん:2019/03/07(木) 12:19:36.46 ID:kyyLy5en.net
PerlってCGIのために造られた訳じゃないやん

34 :デフォルトの名無しさん:2019/05/02(木) 18:48:41.37 ID:/mllFld3.net
コマンドっつーのがキモい

35 :デフォルトの名無しさん:2019/05/03(金) 14:32:04.51 ID:3Vz/qKoh.net
変態度で言えばperlも相当なもんだが
なぜこんなに差が付いたのか
90年代初頭ではtclの方が勝ってたろ

36 :デフォルトの名無しさん:2019/05/03(金) 16:56:51.57 ID:H4kt2X4Y.net
変数がテキストとして処理されるというのが使いにくいからだろ
使いにくさは認めざるを得ない

それでも既存のコマンドを繋ぎ合わせるのには便利だし
Expectはネットワークじゃまだまだバリバリ使われてるんだろ?

37 :本田:2019/06/19(水) 06:46:00.21 ID:7+Fihow6.net
[PDF]Exploring Expect V413HAV - Busindre
h ttps://www.busindre.com/_media/exploring_expect.pdf

38 :デフォルトの名無しさん:2020/05/09(土) 04:21:44 ID:+Y63WkJa.net
おいおいV413HAVって違法のやつだろ
2003年くらいいる本田がそんなんでどうする

39 :デフォルトの名無しさん:2022/01/11(火) 05:50:10.49 ID:lOPVWP/4.net
原理主義な言語はマニアを産むけど流行らない宿命
原理というのは単純なものだから、十年おきくらいにそれ名前変わっただけだろみたいのや再発明がまた流行るけど
lisp系、forth系しかり

40 :デフォルトの名無しさん:2022/02/24(木) 16:50:42.42 ID:CpM4JwWB.net
>>27

>set abc {ABC}
>pack [button .hoge -text hoge -command {puts $abc}]
>set abc {AAA}
>
>だとボタン押したときに実行されるのが
>ABC
>の方なんだよね

そんなはずないと思う

-commandの {puts $abc} はglobalなコンテキストで評価されるから、
abcがglobalならputs $abcはAAAになる

そうじゃなくて -command "puts $abc" であれば、
buttonコマンド実行時に$abcが置換されるからABCになる

慣れないうちは混乱する
こんなところが嫌われる

41 :デフォルトの名無しさん:2022/05/05(木) 10:39:52.04 ID:t+UFBZGG.net
man tcl
を読めばわかる話
変に日本語の解説を読むと混乱する。
コマンド 引数 …
という形態であるということと置換の意味がわかればどうということはない。

42 :デフォルトの名無しさん:2023/01/04(水) 20:42:35.50 ID:56xeELVH.net
>>40
>慣れないうちは混乱する
>こんなところが嫌われる

それな

43 :デフォルトの名無しさん:2023/01/04(水) 21:53:03.12 ID:56xeELVH.net
>>40
>そんなはずないと思う

それがハマりどころ

set abc {ABC}
button .hoge -text hoge -command {puts $abc}
pack .hoge
set abc {AAA}

ならAAAがでてくるけど

set abc {ABC}
pack [button .hoge -text hoge -command {puts $abc}]
set abc {AAA}

ならABCが出てくる
はず

後者は[]で$abcが展開されちゃうんだよね

44 :デフォルトの名無しさん:2023/01/07(土) 20:54:41.89 ID:nmYYllE/.net
全てが文字列
変数名に$をつけると中身と置換
1行1コマンドで最初のフィールドがコマンド名、残りのフィールドが引数
フィールド内に空白文字を含む場合は""か{}で括る
""で括られると変数置換
{}だと置換なし
[]で括るとコマンドとして実行結果と置換される
ifもforもwhileもprocも全てコマンド、コメントもコマンド

これがTclの全てです。知らんけど

45 :デフォルトの名無しさん:2023/01/18(水) 21:55:17.87 ID:cd+i1czb.net
一貫性を愛せよ

46 :デフォルトの名無しさん:2023/09/23(土) 12:52:40.09 ID:i9fpyxKg.net
tclのスクリプトは似てないけど
tclをCでモジュール描いたりリンクしてみると
pythonとそっくりだよ

12 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★