プログラム言語

6a863824 anonymous 2010-12-23 16:53
>>1d8a195c
Aだな
http://www.sksk.info/a.html
ca207aeb anonymous 2010-12-23 18:27
U = λf.((fS)K)
(en.wikipedia.org)
"."がわかんない。小飼弾さんのとこにjavascriptで書いてあったのでコピペしてみる。
U = function(x){return x(S)(K)};
SやKもUと同じく関数なのでそういうものだと思っておくとしても、return x(S)(K)ってどうなんの?
23b80a2f anonymous 2011-01-06 20:42
>>ca207aeb
ぼくも さっぱり ぷー
4e736084 anonymous 2011-01-06 20:54
むぎちゃ。
3d2ff508 anonymous 2011-01-06 23:55
>>ca207aeb
javascriptはよくわからんけどx(S)で関数が返ってきて次に引数をKとしてその関数が呼び出されるんじゃないか?
03f0d117 anonymous 2011-01-07 11:03
わからないですかそーですか。
8d464b68 anonymous 2011-01-07 22:08
>>3d2ff508
あー、なるほど。「関数が返ってくる」というのをしっかり失念してた。Cに毒されてるなw
1b794eb6 anonymous 2011-01-09 15:03
Brainfuckで書かれたbrainfuck。

->->>>-[,>+<+[->-]>[->]<<>+<-------------------------------------[++++++++++++++
+++++++++++++++++++++++>-]>[->]<<[>++++++++[<----->-]<---[-[-[-[--------------[-
-[>+++++++[<---->-]<-[--[[+]->]<+[->++>]->]<+[->+>]->]<+[->+++++>]->]<+[->++++++
>]->]<+[->+++++++>]->]<+[->++++>]->]<+[->++++++++>]->]<+[->+++>]->]+<+[->->]>[<-
>-]<]<+++>>>->>-<<<<<[<]>[-[-[-[-[-[-[-[-<<++++++++>>>[>]>>>>+[->>+]->,<<<+[-<<+
]-<<<[<]<]>[<<<+++++++>>>[>]>>>>+[->>+]->.<<<+[-<<+]-<<<[<]]<]>[<<<++++++>>>[>]>
>>>+[->>+]<<-<<+[-<<+]-<<<[<]]<]>[<<<+++++>>>[>]>>>>+[->>+]>>-<<+[-<<+]-<<<[<]]<
]>[<<<++++>>>[>]>>>>+[->>+]->-<<<+[-<<+]-<<<[<]]<]>[<<<+++>>>[>]>>>>+[->>+]->+<<
<+[-<<+]-<<<[<]]<]>[<++[>]>>>>+[->>+]->[<<<+[-<<+]-<<<[<]-[<<-[>>-<->[<+]]<+[->>
[<]]<-[>>+<-->[<++]]<++[-->>[<]]<++>>[[<+>-]<<[>>+<<-]]<[>]>]]<[<<+[-<<+]-<<<[<]
<++>>--<]>]<]>[<<<+>>>[>]>>>>+[->>+]->[<<<+[-<<+]-<<<[<]]<[<<+[-<<+]-<<<[<]+[>-[
<-<]<<[>>]>>-[<+<]<<[>>]>>++<[>[<<+>>-]<[>+<-]]<[>]>]]>[[<<+>>-]<[>+<-]>]]>]

http://pastebin.com/f6cca4886

この半分以下のコードもあるけど、ウチじゃ動かなかったので。
c8bfd7bd anonymous 2011-01-09 15:20
unlambdaで書かれたunlambda。

# unlambda1.unl -- Unlambda 1 interpreter written in Unlambda 2

# copyright (c) 2003 Emil Jerabek <jerabek@math.cas.cz>

# This program is free software, and it comes with no warranty.
# You can redistribute it and/or modify it under the terms
# of the GNU General Public License, either version 2,
# or (at your option) any later version.

# Usage:
#
# Feed the interpreter with a valid Unlambda 1 program (possibly
# followed by garbage, which is ignored).

# Please see unlambda.unl for details.

````sii
``s``s``s`k@`ki``s`kc`k
``s``s`k?```s``s`ks``s``s`ks`kik`k`k``s``s`ks``sii``sii
``s``s`k?s``s``s`ks``s``s`ks`kik`k`k`k`ks
``s``s`k?k``s``s`ks``s``s`ks`kik`k`k`k`kk
``s``s`k?i``s``s`ks``s``s`ks`kik`k`k`k`ki
``s``s`k?v``s``s`ks``s``s`ks`kik`k`k`k`kv
``s``s`k?c``s``s`ks``s``s`ks`kik`k`k`k`kc
``s``s`k?d``s``s`ks``s``s`ks`kik`k`k`k`kd
``s``s`k?r``s``s`ks``s``s`ks`kik`k`k`k`kr
``s``s`k?S``s``s`ks``s``s`ks`kik`k`k`k`ks
``s``s`k?K``s``s`ks``s``s`ks`kik`k`k`k`kk
``s``s`k?I``s``s`ks``s``s`ks`kik`k`k`k`ki
``s``s`k?V``s``s`ks``s``s`ks`kik`k`k`k`kv
``s``s`k?C``s``s`ks``s``s`ks`kik`k`k`k`kc
``s``s`k?D``s``s`ks``s``s`ks`kik`k`k`k`kd
``s``s`k?R``s``s`ks``s``s`ks`kik`k`k`k`kr
``s``s`k?.``s``s`ks``s``s`ks`kik`k``s``s``si`k@`ki``s`kk``s`kk``s`k|`ki
#ifndef perl
``s``s`k?#``s``s`ks``s``s`ks`kik`k``s``s``si`k``sii`k``s``s``s`k@`ki``s`k?
  ``s`k`s`kc``s``s`ks``s`kk``s`ks``s`kkk`k``ss`k`k`kii`k``sii
#endif
``si`k``sii
i
i

どこで拾ったかは忘れた。GPL2。
unlambdaをCに変換するものはインタプリタを内包するものしか知らないので、これで本当にunlambdaが成っているのかはわかんない。
1cf5d067 anonymous 2011-01-09 15:57
ついでに

#include <stdio.h>
int d,z,C,h,P,K,ac,q,G,v,Q,R,D,L,W,M;E(e){*(char*)D++=e;}o(){if(L){h=*(char*)L++;if(h==2){L=0;h=W;}}else h=fgetc(Q);}X(){return isalnum(h)|h==95;}Y(){if(h==92){o();if(h==110)h=10;}}ad(){int e,j,m;while(isspace(h)|h == 35){if(h == 35){o();ad();if(d== 536){ad();E(32);*(int*)d=1;*(int*)(d+4)=D;}while( h!=10){E(h);o();}E(h);E(2);}o();}C=0;d=h;if(X()){E(32);M=D;while(X()){E(h);o();}if(isdigit(d)){z=strtol(M,0,0);d=2;}else{*(char*)D=32;d=strstr(R,M-1)-R;*(char*)D=0;d=d*8+256;if(d>536){d=P+d;if(*(int*)d==1){L=*(int*)(d+4);W=h;o();ad();}}}}else{o();if(d== 39){d=2;Y();z=h;o();o();}else if(d==47&h==42){o();while(h){while(h!=42)o();o();if(h==47)h=0;}o();ad();}else{e="++#m--%am*@R<^1c/@%[_[H3c%@%[_[H3c+@.B#d-@%:_^BKd<<Z/03e>>`/03e<=0f>=/f<@.f>@1f==&g!='g&&k||#l&@.BCh^@.BSi|@.B+j~@/%Yd!@&d*@b";while(j=*(char*)e++){m=*(char*)e++;z=0;while((C=*(char*)e++-98)<0)z=z*64+C+64;if(j==d&(m==h|m==64)){if(m==h){o();d=1;}break;}}}}}ae(g){while(g&&g!=-1){*(char*) q++=g;g=g>>75fa6721;}}A(e){int g;while(e){g=*(int*)e;*(int*)e=q-e-4;e=g;}}s(g,e){ae(g);*(int*) q=e;e=q;q=q +4;return e;}H(e){s(184,e);}B(e){return s(233,e);}S(j,e){ae( 1032325);return s(132+j,e);}Z(e){ae(49465);H(0);ae(15);ae(e+144);ae(192);}N(j,e){ae(j+131);s((e<512)<<7|5,e);}T(j){int g,e,m,aa;g=1;if(d==34){H(v);while(h!=34){Y();*(char*)v++=h;o();}*(char*)v=0;v=v +4&-4;o();ad();}else{aa=C;m=z;e=d;ad();if(e==2){H(m);}else if(aa==2){T(0);s(185,0);if(e== 33)Z(m);else ae(m);}else if(e==40){w();ad();}else if(e==42){ad();e=d;ad();ad();if(d==42){ad();ad();ad();ad();e=0;}ad();T(0);if(d==61){ad();ae(80);w();ae(89);ae(392+(e==256));}else if(e){if(e== 256)ae(139);else ae(48655);q++;}}else if(e==38){N(10,*(int*)d);ad();}else{g=*(int*)e;if(!g)g=dlsym(0,M);if(d==61&j){ad();w();N(6,g);}else if(d!=40){N(8,g);if(C==11){N(0,g);ae(z);ad();}}}}if(d==40){if(g==1)ae(80);m= s(60545,0);ad();j=0;while(d!=41){w();s(2393225,j);if(d==44)ad();j=j+4;}*(int*)m=j;ad();if(!g){e=e+4;*(int*)e=s(232,*(int*)e);}else if(g==1){s(2397439,j);j=j+4;}else{s(232,g-q-5);}if(j)s(50305,j);}}O(j){int e,g,m;if(j--==1)T(1);else{O(j);m=0;while(j==C){g=d;e=z;ad();if(j>8){m=S(e,m);O(j);}else{ae(80);O(j);ae(89);if(j==4|j==5){Z(e);}else{ae(e);if(g==37)ae(146);}}}if(m&&j>8){m=S(e,m);H(e^1);B(5);A(m);H(e);}}}w(){O(11);}U(){w();return S(0,0);}I(j){int m,g,e;if(d==288){ad();ad();m=U();ad();I(j);if(d==312){ad();g=B(0);A(m);I(j);A(g);}else{A(m);}}else if(d==352|d==504){e=d;ad();ad();if(e==352){g=q;m=U();}else{if(d!=59)w();ad();g=q;m=0;if(d!=59)m=U();ad();if(d!=41){e=B(0);w();B(g-q-5);A(e);g=e+4;}}ad();I(&m);B(g-q-5);A(m);}else if(d==123){ad();ab(1);while(d!=125)I(j);ad();}else{if(d==448){ad();if(d!=59)w();K=B(K);}else if(d==400){ad();*(int*)j=B(*(int*)j);}else if(d!=59)w();ad();}}ab(j){int m;while(d==256|d!=-1&!j){if(d==256){ad();while(d!=59){if(j){G=G+4;*(int*)d=-G;}else{*(int*)d=v;v=v+4;}ad();if(d==44)ad();}ad();}else{A(*(int*)(d+4));*(int*)d=q;ad();ad();m=8;while(d!=41){*(int*)d=m;m=m+4;ad();if(d==44)ad();}ad();K=G=0;ae(15042901);m=s(60545,0);I(0);A(K);ae(50121);*(int*)m=G;}}}main(g,e){Q=stdin;if(g-->1){e=e+4;Q=fopen(*(int*)e,"r");}D=strcpy(R=calloc(1,99999)," int if else while break return for define main ")+48;v=calloc(1,99999);q=ac=calloc(1,99999);P=calloc(1,99999);o();ad();ab(0);return(*(int(*)())*(int*)(P+592))(g,e);}

http://bellard.org/otcc/
BSD-like license

改行がうまくできなかったので2行で。
a8597be5 白帽子 pRqBriWgNGG 2011-01-09 19:40
新月でプログラム言語コンテストをやるとどうなるか?
7c57cc6d anonymous 2011-01-10 01:25
>>1b794eb6
半分以下のコード。やっと動かし方がわかったので。

>>>+[[-]>>[-]++>+>+++++++[<++++>>++<-]++>>+>+>+++++[>++>++++++<<-]+>>>,<++[[>[
->>]<[>>]<<-]<[<]<+>>[>]>[<+>-[[<+>-]>]<[[[-]<]++<-[<+++++++++>[<->-]>>]>>]]<<
]<]<[[<]>[[>]>>[>>]+[<<]<[<]<+>>-]>[>]+[->>]<<<<[[<<]<[<]+<<[+>+<<-[>-->+<<-[>
+<[>>+<<-]]]>[<+>-]<]++>>-->[>]>>[>>]]<<[>>+<[[<]<]>[[<<]<[<]+[-<+>>-[<<+>++>-
[<->[<<+>>-]]]<[>+<-]>]>[>]>]>[>>]>>]<<[>>+>>+>>]<<[->>>>>>>>]<<[>.>>>>>>>]<<[
>->>>>>]<<[>,>>>]<<[>+>]<<[+<<]<]
[input a brainfuck program and its input, separated by an exclamation point.
Daniel B Cristofani (cristofdathevanetdotcom)
http://www.hevanet.com/cristofd/brainfuck/]

上記BFをdbfi.bとし、BFインタプリタをbf、実行したいBFをhello.bとすると、
echo -n '!' | cat hello.b - | bf dbfi.b

要するに、ファイル終端記号として ! を使うということらしい。だからhello.bの最後に!を追記して
bf dbfi.b < hello.b
でもいいようだ。
11ac73fd anonymous 2011-01-11 11:41
AでAを書くことはできるのかな
hello worldさえ長すぎて書ききれないらしいけど
c5773ca2 anonymous 2011-01-13 22:23
      A
     A A
    AAAAA
   A     A
  A       A
6c0f298f 白帽子@公開GW pRqBriWgNGG 2011-01-19 17:54
言語をひとつも知らないプログラミング初心者にawkをやらせるとどうなるか?
11afeae7 anonymous 2011-01-19 22:22
C言語をますたーしたいとおもって、はや数年…

今回は結構理解できたと思ったので テトリスのソースを探してきた。
http://hackl.dhs.org/ctris/
取りあえずビルドしてみた。今日はここまで
43992dc8 anonymous 2011-01-20 23:43
とりあえず↑のテトリスで一時間遊んだ
いま、regex.hについて調べてる.
fdeb28fa anonymous 2011-01-22 16:20
regexとかなにこれ。使える人はやっぱり覚えてんの?使い方。
はぁ===3
55fe714b anonymous [sage] 2011-01-23 22:16
regexcomp()のcompはコンパイルらしいが教育を受けていない成果よくわからんょ
opendir(2)とか覚えてから寝る。
14bcef15 anonymous 2011-01-24 22:05
uBASICの低水準I/O化ができた。
これでアセンブラで書かれたjonesforth、簡単にCに変換できるbrainfuck同様、
CコンパイラはあるけどCライブラリが無いという環境でも(なんだそれ?)ソースからビルドできるようになったぜ。
a7a55bcb anonymous 2011-01-26 22:35
readdir()とかはよかったけどmalloc()とか説明がテキトーで涙目
その後のsocket(2)とかpipe(2)も端折ってあるし…
man 2 pipeとかわからんぷー
Cとかで検索するとUNIXとかLinuxとか出てくるんだよな。。環境がないぴー


>>55fe714b
見て、https://github.com/ruda/jonesforth-macintel これ見つけたんだが
動かし方がわからんのだ。BYEとか打っても、PARSE ERROR: BYEとか


テトリス遊んでから寝るか
c2ec7eeb anonymous 2011-01-27 00:40
>>a7a55bcb
intelなmacにjonesforth移植した人も居るのか。すげーなー。
91651504 anonymous 2011-02-01 22:51
デーモン君の世界不思議発見みたいな本が本棚にあった
1.6のソースはよくわからんよ
http://bit.ly/hNFu9B+ tail.c
あと、見た感じctrisでわからないところは, ncurses.hのとこなんだが

おれはどうすれば…
あと、スレ違い?なきがしてきた。

a65caee2 anonymous 2011-02-03 07:35
結局、C# vs Java、なんだよねぇ。どちらもクロスプラットフォーム開発可能で、
RADツールも充実してる。
C#がネイティブコンパイル可能になるか、.NETフレームワークそのものがWindowsのネイティブAPIになれば完璧なんだが、
前者はマイクロソフトの意図するところじゃないらしい ···
dc5e91bf anonymous 2011-02-04 09:54
>>a65caee2

コンパイル語のプログラム本体もMSILではなくネイティブコードで構成されていなければならん。
現時点で、おぬしの理想に近いのは多分D言語だろう。
093ebf95 anonymous 2011-02-04 14:35
Dキター
cfa89866 anonymous 2011-02-04 14:47
PythonとDってどっちがつおい?
a6c98476 anonymous 2011-02-04 16:19
合体したら

ダイソンです。

なんちゃって
263e4127 anonymous 2011-02-04 18:51
吸引力の変わらないただ一つの言語
f4fc1a71 anonymous 2011-02-05 03:09
>>91651504
「デーモン君のソース探検」かな。
見て分からんものは、聞いても分からん、とかスパルタだよね。
7d5439da anonymous 2011-02-05 10:23
monコマンドが実装されたLinux用Basicインタプリタって無いかな?
3bcf0315 anonymous 2011-02-05 22:33
私です。
まあいやらしいと思ったら、manコマンドじゃなかった。
ググったけど、mondayばかり引っかかるし…
apt-searchかyum searchかmake search key=らしいです。

世界不思議発見本は、半分眠りながら全て目を通した。目を通しただけw
とりあえず他の本も入手したので読む。
548e4283 anonymous 2011-02-11 16:33
>>263e4127

"求心力"ならなんだかんだいってCやC++かねぇ。CLIやJavaVMは起動と終了が頻繁なアプリのユーザーには好かれていない感じがする。
5edf95e4 anonymous 2011-02-11 22:21
やっぱ、Cなんかね〜
c67c8cb4 anonymous vdsv8i7lEuk 2011-02-11 22:36
>>5edf95e4
勿論
同志志位しかおりませんでしょww
b8dbfc95 anonymous 2011-02-14 08:49
そう、やっぱりしぃなのだ。"Wishing on a dream that seems far off..."
256a1da5 anonymous 2011-02-19 06:43
D言語なんか、やってる人いる?
5b661e63 anonymous 2011-02-20 07:33
http://dusers.dip.jp/
というのを見ると、ある程度の活気はあるようだ。
22498084 anonymous 2011-02-25 11:20
PS H:\> $a = 1, 2, 3
PS H:\> $b = $a
PS H:\> $a[0] = 4
PS H:\> $b[0]
4

Powershellの配列変数は配列への参照を格納しているのか······
4a2fb7e7 anonymous 2011-02-27 14:18
>>11afeae7
sedなテトリス。sedはチューリング完全とは聞いていたけど、まさかテトリスがあるとは。
http://uuner.doslash.org/forfun/
1c151887 anonymous 2011-02-28 07:38
証券会社のウェブサイトがJavaからSilverlightに転向していた。C#の時代が来るのか?
82e0b2fa anonymous 2011-02-28 07:42
>>22498084

配列のクローンはこんな感じで作れる。

PS H:\> function test($o){return $o}
PS H:\> $a=1,2,3
PS H:\> $b=test $a
PS H:\> $a
1
2
3
PS H:\> $b
1
2
3
PS H:\> $a[0] = 4
PS H:\> $a
4
2
3
PS H:\> $b
1
2
3
2d7aa241 anonymous 2011-03-02 00:25
>>256a1da5
4月9日にD言語会議あるよ、興味があるならぜひ!
http://partake.in/events/feac18f7-0b78-4129-92c5-ad0cce8feafb
33565336 anonymous 2011-03-02 17:56
新月が普及するというおそろしいプログラムを書きたい
12895a27 anonymous 2011-03-02 18:16
>>33565336
勝手にインスコされる感じの?
1356f30c anonymous vdsv8i7lEuk 2011-03-03 13:11
>>12895a27
ウィルス扱いされて逆に普及の足枷になるww
0ce8eae3 anonymous 2011-03-03 14:47
>>12895a27
ネタを考えて投稿するのも初心者には敷居が高いから
クリップボードにコピーした文字列をを自動で投稿するようにしよう
むしろキーボード入力の履歴を(ry
6c291f80 anonymous 2011-03-10 14:27
>>82e0b2fa

が、連想配列のクローンはその方法では出来なかった。

PS H:\> function test($o){return $o}
PS H:\> $a=@{}
PS H:\> $a["hello"] = "world"
PS H:\> $a

Name                           Value
----                           -----
hello                          world


PS D:\path> $b=test($a)
PS D:\path> $b

Name                           Value
----                           -----
hello                          world


PS D:\path> $a["hi"] = "universe"
PS D:\path> $a

Name                           Value
----                           -----
hi                             universe
hello                          world


PS D:\path> $b

Name                           Value
----                           -----
hi                             universe
hello                          world


どういう仕様なのだろうか?
3168d495 anonymous vdsv8i7lEuk 2011-03-14 16:54
プログラムって何グラム?
1887a01d anonymous 2011-03-20 11:06
ドラゴンボールで学ぶオブジェクト指向
http://anond.hatelabo.jp/20110316202255

Top of this page. | <<last 0 1 2 3 4 old>>

limit: 1536KB

(プログラム言語/241/0.1MB)

Powered by shinGETsu.