Skip to content

Commit 031f090

Browse files
Update French homepage
1 parent a499be1 commit 031f090

4 files changed

Lines changed: 352 additions & 3 deletions

File tree

_data/locales.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
label: English
33
native_label: English
44
docs_enabled: true
5-
docs_home_page_id: getting_started
5+
docs_home_page_id: home
66
- code: fr
77
label: French
88
native_label: Francais
99
docs_enabled: true
10-
docs_home_page_id: getting_started
10+
docs_home_page_id: home

_layouts/default.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@
3838
<!-- Top navigation -->
3939
<header class="site-header" role="banner">
4040
<nav class="nav-container" aria-label="Main navigation">
41-
<a class="nav-brand" href="{{ '/' | relative_url }}">
41+
{% capture nav_home_url %}{% include localized-url.html page_id='home' fallback_url='/' locale=current_locale %}{% endcapture %}
42+
<a class="nav-brand" href="{{ nav_home_url | strip }}">
4243
<img class="brand-icon" src="{{ '/assets/images/logo.svg' | relative_url }}" alt="" aria-hidden="true" />
4344
<span class="brand-name">multilingual</span>
4445
<span class="brand-version">v{{ site.version }}</span>

fr/index.md

Lines changed: 346 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,346 @@
1+
---
2+
layout: home
3+
page_id: home
4+
locale: fr
5+
title: "Langage de programmation multilingue"
6+
description: "Ecrivez des programmes en anglais, francais, espagnol, japonais, arabe, hindi et plus encore. Un seul noyau formel. Backends Python et WASM."
7+
permalink: /fr/
8+
---
9+
10+
<section class="hero">
11+
<span class="hero-eyebrow">v0.5.1 &mdash; Maintenant avec WASM et POO</span>
12+
<h1 class="hero-title">
13+
Ecrivez du code en<br/>
14+
<span class="gradient-text">toute langue humaine</span>
15+
</h1>
16+
<p class="hero-description">
17+
<strong>multilingual</strong> est un langage de programmation avec un noyau semantique formel unique et plusieurs interfaces en langues naturelles. Ecrivez en anglais, francais, espagnol, japonais, arabe, hindi et plus encore &mdash; compilez vers Python ou WASM.
18+
</p>
19+
<div class="hero-actions">
20+
<a href="{{ '/fr/docs/demarrage/' | relative_url }}" class="btn btn-primary">Commencer &rarr;</a>
21+
<a href="{{ '/fr/docs/guide-langage/' | relative_url }}" class="btn btn-secondary">Guide du langage</a>
22+
<a href="https://github.com/johnsamuelwrites/multilingual" class="btn btn-secondary" target="_blank" rel="noopener">Voir sur GitHub</a>
23+
</div>
24+
</section>
25+
26+
<div class="stats-strip">
27+
<div class="stat-item">
28+
<div class="stat-value">17</div>
29+
<div class="stat-label">Langues humaines</div>
30+
</div>
31+
<div class="stat-item">
32+
<div class="stat-value">1,797</div>
33+
<div class="stat-label">Cas de test</div>
34+
</div>
35+
<div class="stat-item">
36+
<div class="stat-value">100x</div>
37+
<div class="stat-label">Acceleration WASM</div>
38+
</div>
39+
<div class="stat-item">
40+
<div class="stat-value">41</div>
41+
<div class="stat-label">Fonctions localisees</div>
42+
</div>
43+
<div class="stat-item">
44+
<div class="stat-value">0.5.1</div>
45+
<div class="stat-label">Version actuelle</div>
46+
</div>
47+
</div>
48+
49+
<section class="home-section" style="padding-top:3rem" markdown="1">
50+
<div style="text-align:center; margin-bottom:2rem">
51+
<span class="section-eyebrow">Le meme programme, dans chaque langue</span>
52+
<h2 class="section-title">Un modele syntaxique, 17 expressions</h2>
53+
<p class="section-desc" style="margin: 0 auto 0">Ecrivez la meme logique dans n'importe quelle langue prise en charge. Le compilateur la projette vers le meme noyau formel et la meme sortie Python.</p>
54+
</div>
55+
56+
<div class="code-demo">
57+
<div class="code-demo-header">
58+
<span class="code-demo-dot dot-red"></span>
59+
<span class="code-demo-dot dot-yellow"></span>
60+
<span class="code-demo-dot dot-green"></span>
61+
<span class="code-demo-title">bonjour.ml</span>
62+
</div>
63+
<div class="code-demo-tabs">
64+
<button class="code-tab active" data-target="en">Anglais</button>
65+
<button class="code-tab" data-target="fr">Francais</button>
66+
<button class="code-tab" data-target="es">Espagnol</button>
67+
<button class="code-tab" data-target="ja">Japonais</button>
68+
<button class="code-tab" data-target="ar">Arabe</button>
69+
<button class="code-tab" data-target="hi">Hindi</button>
70+
</div>
71+
<div class="code-demo-body">
72+
<div class="code-panel" data-lang="en" style="display:block">
73+
{% highlight python %}
74+
let name = "world"
75+
let count = 5
76+
77+
def greet(n):
78+
for i in range(count):
79+
print(f"Hello, {n}! iteration {i}")
80+
81+
greet(name)
82+
{% endhighlight %}
83+
</div>
84+
<div class="code-panel" data-lang="fr" style="display:none">
85+
{% highlight python %}
86+
soit nom = "monde"
87+
soit compteur = 5
88+
89+
fonction saluer(n):
90+
pour i dans intervalle(compteur):
91+
afficher(f"Bonjour, {n} ! iteration {i}")
92+
93+
saluer(nom)
94+
{% endhighlight %}
95+
</div>
96+
<div class="code-panel" data-lang="es" style="display:none">
97+
{% highlight python %}
98+
sea nombre = "mundo"
99+
sea contador = 5
100+
101+
def saludar(n):
102+
para i en rango(contador):
103+
imprimir(f"Hola, {n}! iteracion {i}")
104+
105+
saludar(nombre)
106+
{% endhighlight %}
107+
</div>
108+
<div class="code-panel" data-lang="ja" style="display:none">
109+
{% highlight python %}
110+
変数 名前 = "世界"
111+
変数 カウント = 5
112+
113+
関数 挨拶(n):
114+
毎 i 中 範囲(カウント):
115+
表示(f"こんにちは {n} 繰り返し {i}")
116+
117+
挨拶(名前)
118+
{% endhighlight %}
119+
</div>
120+
<div class="code-panel" data-lang="ar" style="display:none">
121+
{% highlight python %}
122+
ليكن اسم = "العالم"
123+
ليكن عداد = 5
124+
125+
دالة تحية(n):
126+
لكل i في مدى(عداد):
127+
اطبع(f"مرحبا {n} تكرار {i}")
128+
129+
تحية(اسم)
130+
{% endhighlight %}
131+
</div>
132+
<div class="code-panel" data-lang="hi" style="display:none">
133+
{% highlight python %}
134+
मान नाम = "दुनिया"
135+
मान गिनती = 5
136+
137+
परिभाषा नमस्ते(n):
138+
के_लिए i में परास(गिनती):
139+
छापो(f"नमस्ते {n} पुनरावृत्ति {i}")
140+
141+
नमस्ते(नाम)
142+
{% endhighlight %}
143+
</div>
144+
</div>
145+
</div>
146+
147+
</section>
148+
149+
<section class="home-section" markdown="1">
150+
<span class="section-eyebrow">Pourquoi multilingual ?</span>
151+
<h2 class="section-title">Concu pour le monde entier</h2>
152+
153+
<div class="feature-grid">
154+
155+
<div class="feature-card">
156+
<span class="feature-icon">🌐</span>
157+
<div class="feature-title">17 langues humaines</div>
158+
<p class="feature-desc">Anglais, francais, espagnol, allemand, italien, portugais, polonais, neerlandais, suedois, danois, finnois, hindi, arabe, bengali, tamoul, chinois et japonais, tous comme interfaces de premier rang.</p>
159+
</div>
160+
161+
<div class="feature-card">
162+
<span class="feature-icon">⬡</span>
163+
<div class="feature-title">Un seul noyau formel</div>
164+
<p class="feature-desc">Toutes les interfaces linguistiques compilent vers le meme AST central et le meme CoreIRProgram. La semantique reste identique quelle que soit la langue de surface.</p>
165+
</div>
166+
167+
<div class="feature-card">
168+
<span class="feature-icon">⚡</span>
169+
<div class="feature-title">Backend WASM</div>
170+
<p class="feature-desc">Le backend WebAssembly optionnel apporte des accelerations de 50x a 100x pour les operations matricielles, la cryptographie, le calcul scientifique et plus encore, avec repli automatique sur Python.</p>
171+
</div>
172+
173+
<div class="feature-card">
174+
<span class="feature-icon">🐍</span>
175+
<div class="feature-title">Compatible Python</div>
176+
<p class="feature-desc">Sous-ensemble complet de la syntaxe Python 3.12+ : classes, async/await, comprehensions, decorateurs, f-strings, pattern matching, generateurs, context managers, et plus.</p>
177+
</div>
178+
179+
<div class="feature-card">
180+
<span class="feature-icon">🔧</span>
181+
<div class="feature-title">Extensibilite guidee par les donnees</div>
182+
<p class="feature-desc">Ajoutez une nouvelle langue de programmation principalement via des fichiers de configuration JSON, sans reecrire le parseur. Mots-cles, fonctions integrees et patterns de surface sont decrits comme des donnees.</p>
183+
</div>
184+
185+
<div class="feature-card">
186+
<span class="feature-icon">🧪</span>
187+
<div class="feature-title">~1,797 tests, 58 fichiers</div>
188+
<p class="feature-desc">Couverture de test complete sur les 17 langues. Chaque interface est verifiee de bout en bout : lexer → parser → semantique → generation de code → execution.</p>
189+
</div>
190+
191+
<div class="feature-card">
192+
<span class="feature-icon">📝</span>
193+
<div class="feature-title">REPL interactif</div>
194+
<p class="feature-desc">REPL avec changement de langue et apercu Python. Basculez entre les 17 langues au cours d'une meme session. Inspectez le Python genere, les mots-cles et les operateurs.</p>
195+
</div>
196+
197+
<div class="feature-card">
198+
<span class="feature-icon">🔤</span>
199+
<div class="feature-title">Normalisation de surface</div>
200+
<p class="feature-desc">Les langues SOV et RTL comme le japonais, l'arabe, le hindi, le bengali et le tamoul prennent en charge l'ordre de mots naturel via des regles declaratives.</p>
201+
</div>
202+
203+
<div class="feature-card">
204+
<span class="feature-icon">🔢</span>
205+
<div class="feature-title">Numeraux multilingues</div>
206+
<p class="feature-desc">Prise en charge des numeraux Unicode, des chiffres romains, des nombres complexes, des fractions et de la notation scientifique dans plusieurs systemes d'ecriture.</p>
207+
</div>
208+
209+
</div>
210+
</section>
211+
212+
<section class="home-section" markdown="1">
213+
<span class="section-eyebrow">Langues prises en charge</span>
214+
<h2 class="section-title">Interfaces linguistiques mises en avant</h2>
215+
<p class="section-desc">Chaque langue est une interface complete avec mots-cles localises, messages d'erreur, fonctions integrees et support REPL.</p>
216+
217+
<div class="lang-grid">
218+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#english' | relative_url }}" class="lang-pill">
219+
Anglais <span class="lang-code">en</span>
220+
</a>
221+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#french' | relative_url }}" class="lang-pill">
222+
Francais <span class="lang-code">fr</span>
223+
</a>
224+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#spanish' | relative_url }}" class="lang-pill">
225+
Espagnol <span class="lang-code">es</span>
226+
</a>
227+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#japanese' | relative_url }}" class="lang-pill">
228+
Japonais <span class="lang-code">ja</span>
229+
</a>
230+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#arabic' | relative_url }}" class="lang-pill">
231+
Arabe <span class="lang-code">ar</span>
232+
</a>
233+
<a href="{{ '/fr/docs/guide-langage/toutes-langues/#hindi' | relative_url }}" class="lang-pill">
234+
Hindi <span class="lang-code">hi</span>
235+
</a>
236+
</div>
237+
</section>
238+
239+
<section class="home-section" markdown="1">
240+
<span class="section-eyebrow">Demarrage rapide</span>
241+
<h2 class="section-title">Lancez-vous en 60 secondes</h2>
242+
243+
**Installation :**
244+
245+
```bash
246+
# Minimal (backend Python seulement)
247+
pip install multilingualprogramming
248+
249+
# Recommande (Python + acceleration WASM)
250+
pip install multilingualprogramming[wasm]
251+
252+
# Performance maximale (Python + WASM + NumPy)
253+
pip install multilingualprogramming[performance]
254+
```
255+
256+
**Lancer le REPL :**
257+
258+
```bash
259+
# Par defaut (anglais)
260+
python -m multilingualprogramming repl
261+
262+
# Francais
263+
python -m multilingualprogramming repl --lang fr
264+
265+
# Japonais
266+
python -m multilingualprogramming repl --lang ja
267+
268+
# Avec apercu Python
269+
python -m multilingualprogramming repl --show-python
270+
```
271+
272+
**Executer un fichier :**
273+
274+
```bash
275+
python -m multilingualprogramming run myprogram.ml --lang en
276+
python -m multilingualprogramming run programme.ml --lang fr
277+
```
278+
279+
**Utiliser comme bibliotheque :**
280+
281+
```python
282+
from multilingualprogramming import ProgramExecutor
283+
284+
executor = ProgramExecutor()
285+
executor.execute("""
286+
soit x = 10
287+
soit y = 20
288+
afficher(x + y)
289+
""", language="fr")
290+
```
291+
292+
</section>
293+
294+
<section class="home-section" markdown="1">
295+
<span class="section-eyebrow">Architecture</span>
296+
<h2 class="section-title">Pipeline de compilation</h2>
297+
<p class="section-desc">Chaque programme, dans n'importe quelle langue, suit le meme pipeline vers une sortie Python ou WASM.</p>
298+
299+
```
300+
Langage de surface (fichier .ml)
301+
|
302+
v
303+
+---------------+
304+
| Lexer | Tokenisation Unicode, resolution des concepts de mots-cles
305+
+------+--------+
306+
| Jetons conceptuels (COND_IF, LOOP_FOR, FUNC_DEF...)
307+
v
308+
+-------------------+
309+
| Normalisation | Optionnelle : reecrit l'ordre SOV/RTL vers une forme canonique
310+
| de surface |
311+
+------+------------+
312+
|
313+
v
314+
+---------------+
315+
| Parser | Construit un AST central independant de la langue
316+
+------+--------+
317+
|
318+
v
319+
+-------------------+
320+
| Enveloppe CoreIR | CoreIRProgram (conteneur type avec metadonnees)
321+
+------+------------+
322+
|
323+
v
324+
+-------------------+
325+
| Analyse semantique| Portee, symboles, verification structurelle
326+
+------+------------+
327+
|
328+
+----+----+
329+
| |
330+
v v
331+
+--------+ +---------+
332+
|Python | | WAT | Cibles de generation de code
333+
| Gen | | Gen |
334+
+---+----+ +----+----+
335+
| |
336+
v v
337+
+--------+ +-----------+
338+
|Python | | wasmtime |
339+
|Runtime | | (-> .wasm)|
340+
+--------+ +-----------+
341+
```
342+
343+
<div style="margin-top:1.5rem">
344+
<a href="{{ '/fr/docs/conception/' | relative_url }}" class="btn btn-secondary">Lire la documentation d'architecture &rarr;</a>
345+
</div>
346+
</section>

index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
---
22
layout: home
3+
page_id: home
4+
locale: en
35
title: "Multilingual Programming Language"
46
description: "Write programs in English, French, Spanish, Japanese, Arabic, Hindi and more. One formal core. Python and WASM backends."
57
permalink: /

0 commit comments

Comments
 (0)