> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/id/artikel-mendalam/03-a-six-part-article-series-on-expandafter-tex-tokens-and-expansion.md).

# Seri artikel enam bagian tentang \expandafter, token TeX, dan ekspansi

## Ikhtisar

Primitif TeX `\expandafter` adalah sebuah perintah serbaguna, yang digunakan oleh pemrogram LaTeX/TeX untuk membuat makro canggih—seperti perintah (makro) yang disediakan oleh paket LaTeX. Secara sepintas, `\expandafter` mudah digunakan, tetapi kesan kesederhanaan itu segera hilang ketika Anda menjumpai konstruksi yang lebih kompleks seperti beberapa `\expandafter` perintah yang digunakan untuk melakukan segala macam “pengutak-atik token” `...\expandafter\expandafter\expandafter...`.

Seri artikel ini memiliki tujuan ambisius: menjelaskan *bagaimana* situs web `\expandafter` perintah, dan ekspansi TeX, sebenarnya bekerja—dari prinsip dasar hingga menelusuri proses yang terjadi jauh di dalam perangkat lunak mesin TeX. Pembaca dapat langsung melompat ke [artikel-artikel](#accessing-articles-the-navigation-bar) atau membaca sebuah [pendahuluan](#introduction-and-who-is-this-series-for) dan alasan serta latar belakang seri ini.

## Mengakses artikel: bilah navigasi

Setiap artikel memiliki bilah navigasi berikut sebelum dan sesudah teks sehingga Anda dapat dengan cepat melompat ke artikel lain dalam seri ini:

[Bagian 1](/latex/id/artikel-mendalam/19-how-does-expandafter-work-an-introduction-to-tex-tokens.md) [Bagian 2](/latex/id/artikel-mendalam/22-how-does-expandafter-work-the-meaning-of-expansion.md) [Bagian 3](/latex/id/artikel-mendalam/21-how-does-expandafter-work-tex-uses-temporary-token-lists.md) [Bagian 4](/latex/id/artikel-mendalam/20-how-does-expandafter-work-from-basic-principles-to-exploring-tex-s-source-code.md) [Bagian 5](/latex/id/artikel-mendalam/17-how-does-expandafter-work-a-detailed-macro-case-study.md) [Bagian 6](/latex/id/artikel-mendalam/18-how-does-expandafter-work-a-detailed-study-of-consecutive-expandafter-commands.md)

Berikut tautan ke 6 artikel dalam seri ini:

1. [Pengantar token TeX](/latex/id/artikel-mendalam/19-how-does-expandafter-work-an-introduction-to-tex-tokens.md)
2. [Makna ekspansi](/latex/id/artikel-mendalam/22-how-does-expandafter-work-the-meaning-of-expansion.md)
3. [TeX menggunakan daftar token sementara](/latex/id/artikel-mendalam/21-how-does-expandafter-work-tex-uses-temporary-token-lists.md)
4. [Dari prinsip dasar hingga menelusuri kode sumber TeX](/latex/id/artikel-mendalam/20-how-does-expandafter-work-from-basic-principles-to-exploring-tex-s-source-code.md)
5. [Studi kasus makro secara mendetail](/latex/id/artikel-mendalam/17-how-does-expandafter-work-a-detailed-macro-case-study.md)
6. [Studi mendetail tentang beberapa `\expandafter` perintah](/latex/id/artikel-mendalam/18-how-does-expandafter-work-a-detailed-study-of-consecutive-expandafter-commands.md)

## Pendahuluan dan untuk siapa seri ini?

### \expandafter: prinsip dasar operasi

Tujuan \expandafter adalah memaksa ekspansi dini atas sebuah token dalam input: jika diberikan dua token berurutan dalam input, $$\mathrm{T\_1}$$ dan $$\mathrm{T\_2}$$, `\expandafter` akan menyimpan token $$\mathrm{T\_1}$$, mengekspansi token $$\mathrm{T\_2}$$ dan menempatkan token $$\mathrm{T\_1}$$ kembali di depan ekspansi dari $$\mathrm{T\_2}$$:

$$\verb\*\expandafter\*\ \mathrm{T\_1}\mathrm{T\_2} \rightarrow \mathrm{T\_1}\text{\<expansion of }\mathrm{T\_2}\text{>}$$

Mengikuti deskripsi standar tentang `\expandafter`perilakunya, kami mencatat bahwa ia “menyimpan token $$\mathrm{T\_1}$$”, memaksa “ekspansi” token $$\mathrm{T\_2}$$ (sebelum TeX biasanya melakukannya) lalu menempatkan token $$\mathrm{T\_1}$$ “kembali ke dalam input” agar dibaca lagi oleh TeX. Penulis artikel ini mengenang pernah bingung oleh beberapa aspek perilaku “pengutak-atik token” `\expandafter`perilaku “pengutak-atik token”nya; khususnya:

* Apa arti “menyimpan sebuah token” atau “menempatkan token kembali ke dalam input”—ke mana token-token yang disimpan ini “pergi” dan bagaimana TeX membacanya kembali?
* Seperti apa “ekspansi” itu terlihat, atau apa sebenarnya artinya?
* Bagaimana TeX memproses beberapa `\expandafter` perintah berurutan—bagaimana *sebenarnya* bekerja?

### Tujuan seri artikel

Seri ini berupaya menjawab pertanyaan-pertanyaan di atas melalui dokumentasi hasil penelitian tentang cara kerja internal TeX. Overleaf membangun versi khusus dari salah satu mesin TeX dan menggunakan [Eclipse IDE](https://www.eclipse.org/ide/) untuk mengamati kode sumber TeX saat beroperasi ketika memproses sebuah `.tex` berkas yang berisi contoh penggunaan `\expandafter`.

Kami akan membagikan hasil penelitian itu untuk menelaah:

* sifat/arti sebenarnya dari token TeX;
* pembuatan/penggunaan daftar token sementara oleh TeX;
* apa sebenarnya arti “ekspansi”.

Melalui penjelajahan topik-topik ini kita akan menyusun gambaran besar untuk menjelaskan *bagaimana* `\expandafter` melakukan perilaku “pengutak-atik token”-nya. Seri artikel ini ditulis untuk siapa saja yang ingin memperoleh wawasan tentang topik-topik ini: menelaah lebih dalam TeX itu sendiri, memeriksa bagian-bagian dari operasi internal TeX yang memungkinkan `\expandafter` untuk menjalankan keajaibannya.

Menulis artikel tentang TeX dan konsep/prinsip terkait TeX itu menantang karena TeX adalah perangkat lunak yang luar biasa kompleks—kode sumber yang disusun dengan jenis hurufnya mencapai ratusan halaman. Sebagai contoh, lihat [proyek Overleaf](https://www.overleaf.com/latex/examples/typeset-the-source-code-documentation-for-tex-e-tex-or-pdftex/qkgfgyspnhcv) yang, secara default, menata huruf kode sumber $$\mathrm{\varepsilon}\text{-}\mathrm{\TeX}$$: berkas PDF hasil penataan hurufnya berisi lebih dari 600 halaman.

Secara internal, TeX adalah jejaring rumit dari tindakan dan proses yang saling terkait yang menimbulkan tantangan saat mencoba membahas aspek-aspek perilakunya secara terpisah: menguraikan sebuah “komponen” tertentu, seperti `\expandafter`, dan mencoba menjelaskannya tanpa terus-menerus perlu merujuk pada aspek lain dari perangkat lunak TeX. Berdasarkan sifatnya, `\expandafter` perintah *ekspansi*—suatu proses yang bagi banyak dari kita merupakan konsep yang samar dan agak sulit dipahami sepenuhnya. Namun, ekspansi adalah aspek yang benar-benar mendasar dari perilaku TeX, terjalin di seluruh cara kerja internal TeX dan berlangsung jauh di dalam perangkat lunak TeX itu sendiri. Dalam seri artikel ini kita akan menelusuri makna sebenarnya dari ekspansi, dimulai dengan menyusun kumpulan prinsip dan perilaku terkait yang cukup untuk membangun pemahaman dasar tentang ekspansi. Berlandaskan fondasi itu, kita menutupnya dengan melakukan “pendalaman” untuk melihat ke dalam TeX itu sendiri, menelusuri kode sumber aktual yang mengimplementasikan mekanisme ekspansi TeX.

## Sebagai penutup

Dalam artikel-artikel ini kami telah berusaha menyediakan konten yang berguna/bernilai atau menarik bagi sebanyak mungkin pembaca: berupaya menyeimbangkan keringkasan dengan detail yang tak terhindarkan sambil sekaligus berusaha agar tidak membuat pembaca jenuh dengan memberikan terlalu banyak, atau terlalu sedikit, materi kontekstual. Kami berharap telah menyumbangkan sesuatu yang berguna/bernilai bagi literatur TeX, yang akan dinikmati untuk dibaca oleh anggota komunitas TeX saat ini dan, mungkin, di masa depan.

Selamat $$\mathrm{\TeX}\text{ing!}$$, dari Graham Douglas dan tim Overleaf.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/id/artikel-mendalam/03-a-six-part-article-series-on-expandafter-tex-tokens-and-expansion.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
