Hab das Projekt jetzt leider ein paar Tage auf Eis gelegt. Aber jetzt geht es weiter.

Io ist eine interessante Sprache. Ungewohnt frei von allem Schnick-schnack. Nach all den Jahren mit C# und Java muss man sich erst an die neu gewonnene Freiheit gewöhnen.

Kommen wir zu den Aufgaben im Buch…

Finde

  • Ich machs mir hier jetzt einmal einfach und verlinke die Samplecode-Seite. Wobei ich mir nicht ganz sicher bin, ob es überhaupt viel mehr dazu gibt:
  • Die Frage nach der Community ist auch schnell beantwortet: Mailingliste, Twitter, IRC.
  • Der Style-Guide ist wie er zu erwarten gewesen ist - erstaunlich kompakt.

Beantworte

#!/usr/bin/io
# Autor: Jan Seeger
# Mail: jan@alphadev.net
# Web: jan.alphadev.net
#
# typetest.io
# Task of 4th Day, Seven Languages in Seven Weeks

typetest := method (1+"one")
typetest
#!/usr/bin/io
# Autor: Jan Seeger
# Mail: jan@alphadev.net
# Web: jan.alphadev.net
#
# truefalse.io
# Task of 4th Day, Seven Languages in Seven Weeks

showvalue := method(item, (item or item) println)

showvalue(0)
showvalue("")
showvalue(nil)
  • Durch aufrufen von slotNames auf den Prototyp
  • = weißt zu, wirf einen Fehler falls der Slot noch nicht deklariert ist.

    := weißt zu und deklariert falls Slot noch nicht vorhanden.

    ::= weißt zu, deklariert Slot falls Slot noch nicht vorhanden, und erstellt eine getter-Methode für den Slot.

Tue

io beer.io

oder alternativ per Shebang:

chmod +x beer.io
./beer.io

Zur letzten Aufgabe:

#!/usr/bin/io
# Autor: Jan Seeger
# Mail: jan@alphadev.net
# Web: jan.alphadev.net
#
# dynamicexec.io
# Task of 4th Day, Seven Languages in Seven Weeks

dummy := Object clone
dummy someMethod := method("it works!" println)

dummy perform("someMethod")

BTW: Happy Towel Day