This commit is contained in:
Julien Lengrand-Lambert
2021-09-28 11:15:19 +02:00
parent 21d411ea95
commit 94f7b6ed8f
10 changed files with 84 additions and 48 deletions

View File

@@ -1,48 +0,0 @@
# Imba, a qui intro
* Compiles to Javascript
* Fast fast (Syntax, DOM 'groundbreaking' memoization)
* Compiles to Javascript
* Node, NPM (you can reuse the whole libraries ecosystem)
* Front and Back end
* Created by a company called Scrimba (Code learning platform)
* Why create language in your space?
* Hello World and VSCode plugin
* Electron???
* Imbaconfig.json
* Build, watch, start -> No tests? watch by default
Nice types :
let length = 20px
let duration = 150ms
let regex = /answer is (\d+)/
const list = <ul title="reminders">
<li> "Remember milk"
<li> "Greet visitor"
tag todo-item
css .input color:gray8 bg@hover:gray1
def render
<self .completed=data.completed>
<input bind=data.completed type='checkbox'>
<span.title> data.title
<button @click.stop.emit('remove')> 'x'
css -> file by default, global can be used
type annotations
def multiply a\number, b\number
a * b
No need for - in web components?
size, perf, generated, no js? support?
documentation and support

View File

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

View File

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 88 KiB

BIN
deck/functions.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

84
deck/imba.md Normal file
View File

@@ -0,0 +1,84 @@
# Imba : Le développement web rapide rapide
---
## En 2 secondes
* Compile vers du JavaScript
* Rapide rapide :) (Syntaxe efficace, DOM memoization)
* Node, NPM (tout l'écosystème reste disponible)
* Front and Back end
---
## La genèse
* Imba a été crée par Scrimba.
* Tout le site est basé sur cette stack.
* Tutoriels interactifs pour remplacer les bootcamps
---
## Prise en main : Le top!
* Zero config
* WebApp ou electron avec HelloWorld
* Un plugin VSCode avec tous les goodies habituels
* Live reloading, build, ... Pas de tests?
---
## Quelques goodies : Les types de variables
![inline](variables.png)
---
## Fonctions et inférence de types
![inline](functions.png)
---
## Tags et Components
![inline](tags.png)
---
## Gestion des évènements
---
## Une doc facile à lire mais parfois incomplète
![inline](documentation.png)
---
## Des erreurs ... déconcertantes
![inline](errors.png)
---
## Des erreurs ... en JSON!
![inline](error-json.png)
---
## Performance : TODO app
![inline](performance.png)
---
## Conclusion
* DOM lisible
* Syntaxe -> productif
* Très reconnaissable pour le dév lit
* Niche et manque de ressources

BIN
deck/imba.pdf Normal file

Binary file not shown.

BIN
deck/performance.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
deck/tags.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

BIN
deck/variables.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB