@ ( C ) Dennya of Hack data @
問壱
@ルる流RUruRurU言語
@]GLC一般プログラミング言語属@ペニーストック科
@Hack off 流言語特専コンパイラdata hack data Computer System Roots Software Code Program Cyber Seed HACK DATA HACK
$0select1
$0open1
$0close1
$0enter1
$0ghost1
$0copy1
$0paste1
$0punch1
$0load1
$0save1
data hack data HACK DATA HACK Data Hack on Bit life form Text word character $“C% $“C-INTERCAL% 門@流暢な機械語でコンピュータと語らう網
@CLG@@@@]@>@$"る%@
解答
俺は死んでも生きる
けども
この世界ではみんな死ぬみたい
ガッサイ
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
新鮮な心持ち
解答
時空超越型
思考昇華式
記憶電波感
覚醒情報体
生命領域圏
到達証明度
特殊能力表
算定額壱園
安全確認株
点滅信号価
伝達臨界値
瞬間突破点
空宙浮遊線
当然存在面
天地洞察星
天乃川銀河
目論勿企君
縦横無尽様
通行陰陽道
総合案内役
特権掌握書
殴書更新法
発動効果率
影響範囲比
多次元地層
表現系現象
俺語流魔技術陣
@¥@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
@@Python3AI@@
@Ink data material hack pile data@
@Hack off@
@Cyber data to hack@
@Portable Network Graphics data@
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
嘘くさい
独断と偏見の剣をかざす
権力主義者の化けの皮を剥ぐ
不倫への執着からの謎の快楽を営み膨らんだハナから腐っている妄想で自らの尻の穴と性器を自らの舌でカンジサセチャッテイル醜悪な性根で無意識に産んでしまった殺意に取り憑かれてる弱虫はある晩に枕を八つ当たりする相手に見立てると尋常ならざるコジラセロンリで怨念を刃の姿に変えてなりふり構わず生霊を社会的弱者に向けて飛ばし生命力を奪い続けると共に俺の鼻を曲げに来続ける。
対抗策は完全なるシカト。
会話という人間本来の知能と情緒からなる特殊能力を獲得する段階にまで言霊が養われずに社会システムの上で全く健康に人糞製造装置として機能してしまっているのでスポーツ競技で優秀な成績を収め地方新聞紙の一面を飾る事は出来たものの開けたドアを閉められないし洗面台はいつもびしょびしょ。
もしも真正面から生霊の抹殺に挑もうものなら俺がキチガイ扱いされて精神病院送りになるかバイオレンスがオチだからだ。
専門家に任せられるようになろう。
ここまでの事実から察せる様にどうやら俺の身分と経済基盤を保障するだけの肉の塊にへと成り果てる決意を固めたのでその覚悟にへと出来得る限りの適切な判断の下で寄生植物ヒトモドキにへとの比喩によって尊敬を表そうではないか。
カッコいいよ!ラフレシアに似てる!って言ったら嬉しがってたしヒトモドキならもっと喜んでくんねえとやっぱり頭美味しでしょと思う。
どっちにしろ頭美味しいんだろうけどさ。
そんなこんなんばっかだからうんざりしたくなるけど強くなればいいだけだし人の心に土足で踏み込む輩でも肩書きや関係性などによっての俺の人生にとっての優先度が弾き出る打算的なンではなくって自己の心を包む身体が境界線になる全ての他の存在が共有する時空間という概念に等しくはたらく本来的価値に焦点を集める事で成り立つやや消極的な考え方の内の相手を先に認める事が出来るから次に自らが認められるという希望的観測で厳しい現代日本社会で生存なうな次第でござい。
助けようったってまだ無理だもん。
赤の他人は危害を加えてくるもん。
俺は優しくできるよって通用しないもん。
痛い目見たからよくわかるもん。
だから痛い目見ないと理解できないもん。
壱度も死んだ事ないのに何回も死んでるのになんかまだ生きてるって感じだもん。
だから死ぬのってこえんかも。
なんでおれなんだ。
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
@
Hack code hunt game
@
@[vXFCEv[@$A]@linux-6.3.3.tar.xz@
@@
@[vHTMLv[@$A]@Hackers text00!http://www.catb.org/~esr/intercal/THEORY.html!00@
@@
@
@@@
http://www.catb.org/~esr/intercal/THEORY.html
INTERCAL IMPLEMENTOR’S NOTES
Eric S. Raymond esr@thyrsus.com & Alex Smith <ais523(hello(spambots)))@nethack4.org>
The C-INTERCAL compiler has a very conventional implementation using YACC and LEX (latterly, bison and flex). It generates C, which is then passed to your C compiler.
Lexical issues
The spectacular ugliness of INTERCAL syntax requires that the lexical analyzer have two levels. One, embedded in the input() function, handles the backquote and bang constructs, and stashes the input line away in a buffer for the splat construct’s benefit. The upper level is generated by lex(1) and does normal tokenizing for YACC.
The upper level of the lexer also does a bit of syntax analysis, by distinguishing it from an ordinary COME FROM and passing different symbols to the parser. The lexer is also responsible for helping the parser to match sparks and ears in complicated array situations, by distinguishing possibly closing sparkears from definitely opening sparkears.
In order to splatter erroneous statements correctly, the generated code has to track both logical and physical lines. That’s the reason for the lineno variable in the generated C, it’s actually tracking physical lines.
Numeral tokens for input are defined in a symbol table (numerals.c) that is directly included in the run-time library module (cesspool.c). This avoids having to put the the size of the numerals array in an extern. To add new numeral tokens, simply put them in the numerals initializer.
Compilation
The parser builds an array of tuples, one for each INTERCAL statement. Most tuples have node trees attached. Once all tuples have been generated, the compile-time checker and optimizer phases can do consistency checks and expression-tree rewrites. Finally, the tuples are ground out as C code by the emit() function.
Calculations are fully type-checked at compile time; they have to be because (as I read the manual) the 16- and 32-bit versions of the unary ops do different things. The only potential problem here is that the typechecker has to assume that :m ~ :n has the type of :n (32-bit) even though the result might fit in 16 bits. At run-time everything is calculated in 32 bits. When INTERCAL-72 was designed 32 bits was expensive; now it’s cheap. Really, the only reason for retaining a 16-bit type at all is for the irritation value of it (yes, C-INTERCAL does enforce the 16-bit limit on constants).
Labels are mapped to tuple indices (logical line numbers) in the code checker, just before optimization.
Code Generation
Each line of INTERCAL is translated into a C if()-then; the guard part is used to implement abstentions and RESUMES, and the arm part translates the ‘body’ of the corresponding INTERCAL statement.
The generated C code is plugged into the template file ick-wrap.c inside main(). It needs to be linked with cesspool.o, fiddle.o and lose.o (these are in libick.a, with the support for runtime switches, arrgghh.o). Cesspool.o is the code that implements the storage manager; fiddle.o implements the INTERCAL operators; and lose.o is the code that generates INTERCAL’s error messages. The routine arrgghh.o parses the runtime command line arguments.
The abstain[] array in the generated C is used to track line and label abstentions; if member i is on, the statement on line i is being abstained from. If gerund abstentions/reinstatements are present in the code, a second array recording the type of each statement in generated into the runtime, and used to ensure that these operations are translated into abstention-guard changes on all appropriate line numbers.
RESUMES are implemented with a branch to a generated switch statement that executes a goto to the appropriate label. If there are no RESUMES, no such switch is generated.
The compiler places a simple label at the location of each COME FROM in the program, while all of the machinery for checking for abstention and conditional execution and actually performing the jump is placed immediately after the code for the target statement.
AIS adds: The additions to the language [since 0.24] have made code generation potentially more complicated, depending on which switches are on. Each INTERCAL command is still translated into an if()-then, but with extra guards around it. COME FROM is still handled the same way, but only in singlethreaded programs with no computed COME FROMs. For anything more complicated than that, a general COMING FROM mechanism is invoked. C’s most confusing control-flow identifiers, setjmp and longjmp, are used. When computed COME FROMs are involved, after every labeled statement, a set of gotos are done to check each in turn. A jmp_buf, cjb, is used to store the point in the program where the check started. Each COME FROM leading to that line and computed COME FROM anywhere in the program is checked, and modifies cjb to aim for its suckpoint if neccesary. In the case of a multithreaded program, one cjb will be stored in a linked ring of threads, and the other will be the one in the main program. Extra guards are also added for ONCE/AGAIN; the position of this guard depends on whether the command is a NEXT or something else. ONCE/AGAIN are quite legal even in singlethreaded programs. Computed ABSTAIN is dealt with by allowing the abstain[] array to hold values other than 0 or 1. Multithreading is supported by a new library, libickmt.a, to hold the multithread versions of libick.a functions. See unravel.c for an explanation of the full gory details of the multithread implementation (it has many comments explaining the implementation at the top).
Optimization
The optimizer core does full recursive folding of all constant expressions at compile time (evaluating away all the irritating little kluges you have to use to generate 32-bit constants). It also checks for known INTERCAL idioms for ‘test for equality’, ‘test for nonzeroness’, and the C logical operators &, |, ^, and ~.
Here are the constant-folding optimizations from the original optimizer core:
Vx$y"#0x55555555" into (x | y) ?x$y"#0x55555555" into (x y) &x$y"#0x55555555" into (x & y) (x 0xFFFF) or (x ^ 0xFFFFFFFF) into x
AIS adds: When I got my C-INTERCAL distribution, it only had a rudimentary optimiser. Constant folding had already been done, and the following optimisations. The following is mixed INTERCAL and C, sometimes in the same statement. It should be clear from context and whether I have used INTERCAL spark-ears or C brackets which language is which, although in some places I’ve mixed them. Note that the optimizer is only run in binary.
ESR adds: After 0.24, Alex Smith, assisted by Joris Huizer, wrote a program that interprets an Optimizer Idiom Language and uses it to generate a library implementing those optimizations to be linked to the compiler. This subsumes all the stuff that used to be in the optimizer code.
AIS adds: Optimizations available with -f (I wrote all these)
Guard removal (if a line can’t be abstained, the if(!abstained[x]) line is removed when possible)
Ignorance checks (if a variable can’t be ignored and it can’t overflow, assignment is done with C’s = rather than a function)
Recognition of NEXT…NEXT…computed RESUME as an idiom for if() (currently disabled because the rest of the optimiser can’t handle it)
Optimizations available with -F (I wrote this one)
This optimization should mean that INTERCAL suddenly becomes the best language for various benchmark programs. Basically, the file is analysed to try to determine whether it takes no input and always produces the same output. If that is the case, the output is simply a shell-script (with executable permissions set and a #! line) that outputs the correct output! Therefore, the time required for one run of the program is taken up during compilation, and whenever the program is executed, it just copies out the predetermined output. This means (for instance) that primes.i runs in only a fraction of a second when optimized with -F. Of course, this tends to slow down the compiler and often produces a large object file, which is why it has a command-line option of its own.
Credits
ESR wrote the first version of this compiler over a weekend using a pre-ANSI C compiler. It worked, but it wasn’t pretty.
Louis Howell added the array support later; he also torture-tested the COME FROM implementation by actually using it for the life2.i program included in this distribution, and fixed some bugs.
Brian Raiter did a much-needed delinting while porting it for ANSI C, flex and Linux. He also improved the lexical analyzer’s line tracking.
Alex Smith, assisted by Joris Huizer, did a lot of heavy-duty work on optimization, including designing and implementing OIL, after 0.24.
Last updated 2015-04-02 12:37:41 EDT
@@@
@
@@
@
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
@ルる流RUruRurU言語@]GLC一般プログラミング言語属@ペニーストック科@Hack off 流言語特専コンパイラdata hack data Computer System Roots Software Code Program Cyber Seed HACK DATA HACK $0select1 $0open1 $0close1 $0enter1 $0ghost1 $0copy1 $0paste1 $0punch1 $0load1 $0save1 data hack data HACK DATA HACK Data Hack on Bit life form Text word character $“C% $“C-INTERCAL% 門@流暢な機械語でコンピュータと語らう網@CLG@@@@]@>@$"る%@
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@
Hack code hunt game
@
@@
Warp system core
@@
@$@J00J00!@!00j00j@$@
@@
'/@ dENnYA cYber WorLd SHOP @/@@ data hack data @@/@@@ hack off @@@/@@@@ HACK DATA HACK data hack data HACK @@@@/@@@@@ a.Ready @@@@@/@@@@@@@ Platonic solids in Classical geometry mathematics of the Sacred mysteries commune @@@@@@@/@@@@@@@@ Regular tetrahedron @@@@@@@@$/@@@@@ b.Set @@@@@/@@@@@@@ Kyohei takahashi original thought in Time bug table ura denn of the Neo hack commune @@@@@@@/@@@ HACK ON @@@/@@@@ data hack data HACK DATA HACK data @@@@/@@ HACK DATA HACK @@/@$@/@$@ Unicode Transformation Format-8 Character Figure @$@$/@@@@@ c.Playing @@@@@/@@@@@@@ Bit life form in Wizard level code of the Warp computer commune @@@@@@@$/@@@@@ d.Clear @@@@@/@@@@@@@ Magical item in Manifestation minimum unit master piece of the Real material commune @@@@@@@$/@$@ Word List Link Sysnthesis disassembly symbol Scrawl Hexaquinsama @$@$/@$@ WarP fiRe ROCk TEtRAPOKkUNn @$@/@$@ Warp system core @$@/@$@[@]C[LG00!GLC!00]@$@]@[J]00J00!j00j!00[@$@/@$@ System core status source code setup data pointise hack multidimensionalic link and sysnthesis and disassembly in Comprehensive network service of the Japan markets @$@$/@$@ Tetra system core @$@/@$@[@] Tetra [ pokkunn 00! Time bug table ura denn !00]@$@]@[ Hack off ] Bit life form 00! Hack on bit life form data hack off computer control program soft ware !00[@$@/@$@ Computer tetra control tetra program soft ware code source data status hack accomplish wizard level in Childish machine language good first hack of the Bit life form data @$@$/@$@[@] Rock [ material 00! Status source code !00]@$@]@[ HACKon rock data HACKoff how to ] disassembly log 00! The reason for existence of This log is equal to wisdom of ancient ancestors !00[@$@/@$@ The reason for existence of hack on rock material source code data hack off disassembly log data is equal to wisdom of ancient ancestors in Reverse engineering skills of the Ancient relic civilization @$@$/@$@ Fire system core @$@$/@@@@ data hack data HACK DATA HACK data @@@@/@@ HACK DATA HACK @@/@$@$ ls'@$@ BLENDER @$@''@$@ LISP @$@''@$@ C @$@''@$@ PERL @$@''@$@ English @$@''@$@ PYTHON3 @$@''@$@ Formula @$@''@$@ Pseudo code @$@''@$@ GO @$@''@$@ Unicode Transformation Format-8 Character Figure @$@''@$@ HTML @$@''*4
@@
@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
@@
Warp system core
@@
@$@J00J00!@!00j00j@$@
@@
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
時空超越型
思考昇華式
記憶電波感
覚醒情報体
生命領域圏
到達証明度
特殊能力表
算定額壱園
安全確認株
点滅信号価
伝達臨界値
瞬間突破点
空宙浮遊線
当然存在面
天地洞察星
天乃川銀河
目論勿企君
縦横無尽様
通行陰陽道
総合案内役
特権掌握書
殴書更新法
発動効果率
影響範囲比
多次元地層
表現系現象
俺語流魔技術陣
@¥@
解答
@Hack on data@
@Camera warp to@
@Hack off data@
@Cyber form text life characterise biter Hexaquinsama system program software hack@
@
@@
Warp system core
@@
@$@J00J00!@!00j00j@$@
@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
問壱
俺は死んでも生きる
けども
この世界ではみんな死ぬみたい
ガッサイ
解答
@@
Warp system core
@@
@$@J00J00!@!00j00j@$@
@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@