Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Make presentations run under current MINOS2 |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
958b568710d37f823b6c4c8154741fc4 |
User & Date: | bernd 2019-09-06 15:12:23.368 |
Context
2019-09-09
| ||
22:20 | Move code for presentation support over to Gforth check-in: f9c72d378d user: bernd tags: trunk | |
2019-09-06
| ||
15:12 | Make presentations run under current MINOS2 check-in: 958b568710 user: bernd tags: trunk | |
2019-09-05
| ||
20:39 | Chante update-size to use a slightly smaller power than square root for size check-in: 58e9376a19 user: bernd tags: trunk | |
Changes
Changes to doc/35c3-presentation.fs.
︙ | ︙ | |||
23 24 25 26 27 28 29 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs | < < < < < < | | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs 44e update-size# require minos2/text-style.fs Variable slides[] Variable slide# 0 Value n2-img |
︙ | ︙ | |||
56 57 58 59 60 61 62 | [ glue-left .hglue-c ]L df! [ glue-right .hglue-c ]L df! ; : trans-frame ( o -- ) >o transp# to frame-color o> ; : solid-frame ( o -- ) >o white# to frame-color o> ; : !slides ( nprev n -- ) | | | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | [ glue-left .hglue-c ]L df! [ glue-right .hglue-c ]L df! ; : trans-frame ( o -- ) >o transp# to frame-color o> ; : solid-frame ( o -- ) >o white# to frame-color o> ; : !slides ( nprev n -- ) 44e update-size# update-glue over slide# ! slides[] $[] @ /flip drop slides[] $[] @ /flop drop glue0 ; : fade-img ( r0..1 img1 img2 -- ) >r >r [ whitish x-color 1e f+ ] Fliteral fover f- r> >o to frame-color parent-w .parent-w /flop drop o> [ whitish x-color ] Fliteral f+ |
︙ | ︙ |
Changes to doc/ft2018-presentation.fs.
︙ | ︙ | |||
24 25 26 27 28 29 30 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs | < < < < < < | | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs 44e update-size# require minos2/text-style.fs Variable slides[] Variable slide# 0 Value n2-img |
︙ | ︙ | |||
65 66 67 68 69 70 71 | n2-img m2-img $q-img r@ m/$-switch u>= IF swap THEN r> n/m-switch u>= IF rot THEN rot dup .parent-w .parent-w /flop drop rot dup .parent-w .parent-w /flop drop rot dup .parent-w .parent-w /flip drop trans-frame trans-frame solid-frame | | | | > | | 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | n2-img m2-img $q-img r@ m/$-switch u>= IF swap THEN r> n/m-switch u>= IF rot THEN rot dup .parent-w .parent-w /flop drop rot dup .parent-w .parent-w /flop drop rot dup .parent-w .parent-w /flip drop trans-frame trans-frame solid-frame 44e update-size# update-glue over slide# ! slides[] $[] @ /flip drop slides[] $[] @ /flop drop glue0 ; : fade-img ( r0..1 img1 img2 -- ) >r >r [ whitish x-color 1e f+ ] Fliteral fover f- r> >o to frame-color parent-w .parent-w /flop drop o> [ whitish x-color ] Fliteral f+ r> >o to frame-color parent-w .parent-w /flop drop o> ; : fade!slides ( r0..1 n -- ) dup m/$-switch = IF fdup $q-img m2-img fade-img THEN dup n/m-switch = IF fdup m2-img n2-img fade-img THEN ; |
︙ | ︙ | |||
201 202 203 204 205 206 207 | baseline# 0e to baseline# {{ 2r> }}image-tex dup >r /right glue*l }}glue }}v >o font-size# f2/ to border o o> to baseline# r> ; : pres-frame ( color -- o1 o2 ) \ drop $FFFFFFFF | > | | | | | 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 | baseline# 0e to baseline# {{ 2r> }}image-tex dup >r /right glue*l }}glue }}v >o font-size# f2/ to border o o> to baseline# r> ; : pres-frame ( color -- o1 o2 ) \ drop $FFFFFFFF day-mode new-color, night-mode -1 +to color,# new-color, fdrop day-mode glue*wh slide-frame dup .button1 simple[] ; {{ {{ glue-left }}glue \ page 0 {{ $FFFFFFFF dup pres-frame {{ glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 "net2o: ΜΙΝΩΣ2 GUI, $quid “crypto”" /title "($quid = Ethisches Micropayment mit effizienter BlockChain)" /subtitle {{ {{ glue*l }}glue {{ $0000007F color, to x-color \tiny l" Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. " }}i18n-text \bold "Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit," }}text \regular " sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui " }}text \italic "dolorem ipsum quia dolor sit amet," }}text \regular " consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum " }}text \bold-italic "qui dolorem eum fugiat" }}text \regular " quo voluptas nulla pariatur?" }}text glue*l }}glue }}p cbl dpy-w @ 44.5% fm* dup .par-split /center glue*l }}glue }}v glue*2 }}glue }}z \ ) $CCDDDD3F 4e }}frame dup .button1 "Bernd Paysan" /author "Forth–Tagung 2018, Essen" /location glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >o font-size# to border o Value title-page o o> }}z box[] dup >slides \ page 1 {{ $FFFFFFFF dup pres-frame {{ "Motivation" /title glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 tex: bad-gateway ' bad-gateway "bad-gateway.png" 0.666e }}image-file Constant bgw-glue /center glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >bdr }}z box[] /flip dup >slides \ page 2 {{ $FF7F7FFF dup pres-frame {{ "5 Jahre nach Snowden" /title "Was hat sich verändert?" \\ \skip "Politik" /subsection blackish " Fake News/Hate Speech sind jetzt Ausreden für Zensur #NetzDG" "🤦" e\\ |
︙ | ︙ | |||
264 265 266 267 268 269 270 | " net2o fängt an, benutztbar zu werden" \\ glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >o o Value snowden-page font-size# to border o o> }}z box[] /flip dup >slides \ page 5 {{ | | | 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 | " net2o fängt an, benutztbar zu werden" \\ glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >o o Value snowden-page font-size# to border o o> }}z box[] /flip dup >slides \ page 5 {{ $BFBFFFFF dup pres-frame {{ "ΜΙΝΩΣ2–Technologie" /title "ΜΙΝΩΣ2 ist unterhalb des DOM–Layers" \\ \skip vt{{ "Rendering: " "OpenGL (ES), Vulkan backend möglich" b\\ "Font nach Textur: " "Freetype–GL (mit eigenen Verbesserungen)" b\\ |
︙ | ︙ | |||
289 290 291 292 293 294 295 | }}vt glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >bdr }}z box[] /flip dup >slides \ page 6 {{ | | | 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 | }}vt glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1 }}v box[] >bdr }}z box[] /flip dup >slides \ page 6 {{ $FFBFFFFF dup pres-frame {{ "ΜΙΝΩΣ2 Widgets" /title "Design-Prinzip ist eine Lego–artige Kombination aus vielen sehr einfachen Objekten" \\ {{ {{ vt{{ "actor " "Basis–Klasse, die auf alle Aktionen reagiert (Klicks, Touch, Tasten)" b\\ "widget " "Basis–Klasse für alle sichtbaren Objekte" b\\ {{ "edit " b0 blackish "Editierbarer Text: " }}text |
︙ | ︙ | |||
321 322 323 324 325 326 327 | }}h box[] }}v box[] >bdr }}z box[] /flip dup >slides \ page 7 {{ | | | 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 | }}h box[] }}v box[] >bdr }}z box[] /flip dup >slides \ page 7 {{ $BFFFFFFF dup pres-frame {{ "ΜΙΝΩΣ2 Boxen" /title {{ "Wie bei " }}text \LaTeX " werden Texte/Widgets in Boxen angeordnet" }}text glue*l }}h box[] >bl \skip vt{{ |
︙ | ︙ | |||
343 344 345 346 347 348 349 | }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 8 {{ | | | | | 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 | }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 8 {{ $FFFFBFFF dup pres-frame {{ "ΜΙΝΩΣ2 Displays" /title "Rendern in verschiedene Arten von Displays" \\ \skip vt{{ "viewport " "In eine Textur, genutzt als Viewport" b\\ "display " "Zum tatsächlichen Display" b\\ }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 9 {{ $BFDFFFFF dup pres-frame {{ "Draw–Calls minimieren" /title "OpenGL möchte so wenig wie mögliche Draw–Calls pro Frame, also werden verschiedene Contexte mit einem Draw–Call pro Stack gezeichnet" p\\ \skip vt{{ "init " "Initialisierungs–Runde" b\\ "bg " "Hintergrund–Runde" b\\ "icon " "Zeichne Elemente der Icon–Textur" b\\ "thumbnail " "Zeichne Elemente der Thumbnail–Textur" b\\ "image " "Zeichne Bilder mit einem Draw–Call pro Image" b\\ "marking " "Cursor/Auswahl–Runde" b\\ "text " "Text–Runde" b\\ }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 10 {{ $D4AF37FF dup pres-frame {{ "$quid & SwapDragonChain" /title "Inhalt:" /subsection \skip vt{{ "Geld " "Worum geht es da überhaupt?" b\\ "BitCoin " "Mängel einer Machbarkeitsstudie" b\\ |
︙ | ︙ | |||
406 407 408 409 410 411 412 | drop >o $FFFFFFC0 color, to frame-color o o> /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 11 {{ | | | 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 | drop >o $FFFFFFC0 color, to frame-color o o> /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 11 {{ $e4cF77FF dup pres-frame {{ "Was ist Geld?" /title vt{{ "Primitiv~: " "Objekte mit inhärentem Wert" b\\ "Wechsel: " "Tauschversprechen einer Bank gegen Primitivgeld" b\\ "Repräsentatives ~: " "Staatliches Versprechen zum Tausch gegen „Geldstandard“" b\\ "Fiat~: " "Kein inhärenter Wert, Versprechen ggf. als gesetzliches…" b\\ |
︙ | ︙ | |||
443 444 445 446 447 448 449 | tex: vp1 glue*l ' vp1 }}vp vp[] }}v box[] >bdr }}z box[] /flip dup >slides \ page 12 {{ | | | 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 | tex: vp1 glue*l ' vp1 }}vp vp[] }}v box[] >bdr }}z box[] /flip dup >slides \ page 12 {{ $f4cF57FF dup pres-frame {{ "BitCoins — Mängel früher “Cryptos”" /title vt{{ "• " "Proof of work: Verschwendet Ressourcen, bei zweifelhafter Sicherheit" b\\ "• " "Inflation ist der Krebs des Geldes, Deflation sein Infarkt" b\\ "• " "Konsequenzen: instabiler Kurs, hohe Transaktionskosten" b\\ "• " "Ponzi–Schema–artige Blase" b\\ |
︙ | ︙ | |||
465 466 467 468 469 470 471 | tex: bitcoin-bubble ' bitcoin-bubble "bitcoin-bubble.png" 0.85e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 13 {{ | | | | 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 | tex: bitcoin-bubble ' bitcoin-bubble "bitcoin-bubble.png" 0.85e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 13 {{ $e4df67ff dup pres-frame {{ "Reichtum & Ethik" /title vt{{ "• " "Enormer Vorteil des ersten Handelnden" b\\ "• " "Hat schon eine schlimmere Vermögensverteilung als der Neoliberalismus" b\\ "• " "Große Ungleichheit führt zu Knechtschaft, nicht zu Freiheit" b\\ "• " "Es gibt nicht mal das Konzept des Kredits" b\\ "• " "Das neue Lightning Network bindet auch Vermögen (Folge: Gebühren)" b\\ }}vt glue*l }}glue }}v box[] >bdr {{ glue*l }}glue tex: free-market ' free-market "free-market.jpg" 0.666e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 14 {{ $a4df87ff dup pres-frame {{ "Proof von was?!" /title vt{{ "Herausforderung " "Jede Coin darf nur einmal ausgegeben werden" b\\ "Stand der Technik: " "Proof of work" b\\ "Problem: " "PoW verbrennt Energie und GPUs/ASICs" b\\ "Vorschlag 1: " "Proof of Stake (Geld kauft Einfluss)" b\\ |
︙ | ︙ | |||
509 510 511 512 513 514 515 | "BTW: Der Angriff für “double spending” bedarf einer MITM–Attacke" \\ glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 15 {{ | | | 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 | "BTW: Der Angriff für “double spending” bedarf einer MITM–Attacke" \\ glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 15 {{ $a4d8f7ff dup pres-frame {{ "SwapDragon BlockChain" /title vt{{ "• " "Banken misstrauen sich gegenseitig (d.h. GNU Taler ist keine Lösung)" b\\ "• " "Problemgröße: WeChat Pay peak ~ 0.5MTPS (BTC bei 5TPS)" b\\ "• " "Überrenne den Arbiter: Problem für Lightning Network" b\\ "• " "Also muss die BlockChain selbst skalieren" b\\ |
︙ | ︙ | |||
541 542 543 544 545 546 547 | tex: bank-robs-you ' bank-robs-you "bank-robs-you.jpg" 0.666e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 16 {{ | | | 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 | tex: bank-robs-you ' bank-robs-you "bank-robs-you.jpg" 0.666e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 16 {{ $a487dfff dup pres-frame {{ "Dumb Contracts" /title vt{{ "• " "Smart Contracts: Token–Forth–Subset (BitCoin), JavaScript (Ethereum)" b\\ {{ "• " b0 blackish "Für Smart Contracts braucht man einen Rechtsanwalt " }}text \italic "und" }}text \regular " einen Programmierer" }}text glue*l }}glue }}h box[] >bl "• " "Keep it simple: Ein Kontrakt muss eine ausgeglichene Bilanz haben" b\\ "• " "Auswahl der Quellen (S), Auswahl der Assets (A) dort, Setzen des Wertes (±)" b\\ |
︙ | ︙ | |||
572 573 574 575 576 577 578 | tex: feynman-diag ' feynman-diag "feynman-diag.png" 1.333e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 17 {{ | | | 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 | tex: feynman-diag ' feynman-diag "feynman-diag.png" 1.333e }}image-file drop /right }}v box[] >bdr }}z box[] /flip dup >slides \ page 17 {{ $df87a4ff dup pres-frame {{ "$quid: Ethisches Mining" /title vt{{ "• " "Konzept des Minings: Bewerkstellige harte Arbeit mit rarem Ergebnis" b\\ "• " "Vorschlag: Coupons für die Unterstützung der Entwicklung freier Software" b\\ "• " "Diese Coupons wären dann handelbar" b\\ "• " "Freie Software ist öffentliche Infrastruktur im Informationszeitalter" b\\ |
︙ | ︙ | |||
595 596 597 598 599 600 601 | }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 17 {{ | | | 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 | }}vt glue*l }}glue }}v box[] >bdr }}z box[] /flip dup >slides \ page 17 {{ $FFFFFFFF dup pres-frame {{ "Literatur & Links" /title vt{{ "Bernd Paysan " "net2o fossil repository" bi\\ "" "https://fossil.net2o.de/net2o/" bm\\ "Bernd Paysan " "$quid cryptocurrency & SwapDragonChain" bi\\ "" "https://squid.cash/" bm\\ |
︙ | ︙ |
Changes to doc/ft2019-presentation.fs.
︙ | ︙ | |||
23 24 25 26 27 28 29 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs | < < < < < < | | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | also minos ctx 0= [IF] window-init [THEN] require minos2/font-style.fs 44e update-size# require minos2/text-style.fs Variable slides[] Variable slide# 0 Value n2-img |
︙ | ︙ | |||
56 57 58 59 60 61 62 | [ glue-left .hglue-c ]L df! [ glue-right .hglue-c ]L df! ; : trans-frame ( o -- ) >o transp# to frame-color o> ; : solid-frame ( o -- ) >o white# to frame-color o> ; : !slides ( nprev n -- ) | | | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | [ glue-left .hglue-c ]L df! [ glue-right .hglue-c ]L df! ; : trans-frame ( o -- ) >o transp# to frame-color o> ; : solid-frame ( o -- ) >o white# to frame-color o> ; : !slides ( nprev n -- ) 44e update-size# update-glue over slide# ! slides[] $[] @ /flip drop slides[] $[] @ /flop drop glue0 ; : fade-img ( r0..1 img1 img2 -- ) >r >r [ whitish x-color 1e f+ ] Fliteral fover f- r> >o to frame-color parent-w .parent-w /flop drop o> [ whitish x-color ] Fliteral f+ |
︙ | ︙ |