diff --git a/examples/basics/extended_identifier.own b/examples/basics/extended_identifier.own
index d4e3897..7e6cfa3 100644
--- a/examples/basics/extended_identifier.own
+++ b/examples/basics/extended_identifier.own
@@ -1,5 +1,5 @@
-`extended indetifier variable` = 9
-println `extended indetifier variable`
+`extended identifier variable` = 9
+println `extended identifier variable`
`(。◕‿◕。)` = 20
`ʕ•ᴥ•ʔ` = 30
diff --git a/examples/basics/operator_overloading.own b/examples/basics/operator_overloading.own
index 9d3f0e1..2ea1ac0 100644
--- a/examples/basics/operator_overloading.own
+++ b/examples/basics/operator_overloading.own
@@ -1,6 +1,4 @@
-use "std"
-use "types"
-use "math"
+use ["std", "types", "math"]
println "Operator overloading"
def `::`(v1, v2) = string(v1) + string(v2)
@@ -11,7 +9,7 @@ def `^`(v1, v2) = pow(v1[0], v2[0])
print "[2] ^ [7] = "
println [2] ^ [7]
-def `..`(a, b) = range(a, b - 1)
+def `..`(a, b) = range(a, b)
def `**`(a, b) = int(pow(a, b))
for y : 1 .. 10 {
println sprintf("2 ^ %d = %d", y, 2 ** y)
diff --git a/examples/console/colors.own b/examples/console/colors.own
index f6a832a..b530ad8 100644
--- a/examples/console/colors.own
+++ b/examples/console/colors.own
@@ -1,8 +1,12 @@
use "std"
-for b : range(8)
+
+// header
+print " " * 4
+for b : range(9)
print sprintf(" 4%dm ", b)
println ""
-for f : range(30, 38) {
+
+for f : range(30, 39) {
for s : ["", "1;"] {
print sprintf("%4sm", s+f)
print sprintf(" \u001B[%sm%s\u001B[0m", s+f, "gYw ")
@@ -12,15 +16,3 @@ for f : range(30, 38) {
}
}
-/*use "functional"
-stream(range(30, 38))
- .flatMap(def(f) = [[f, ""], [f, "1;"]])
- .forEach(def(a) {
- extract(f, s) = a
- print sprintf("%4sm", s+f)
- print sprintf(" \u001B[%sm%s\u001B[0m", s+f, "gYw ")
- for b : range(8)
- print sprintf(" \u001B[4%s;%sm%s\u001B[0m", b, s+f, " gYw ")
- println ""
- })
-*/
diff --git a/examples/forms/complicatedForm.own b/examples/forms/complicatedForm.own
index 7796b58..fce462b 100644
--- a/examples/forms/complicatedForm.own
+++ b/examples/forms/complicatedForm.own
@@ -13,7 +13,7 @@ enterTextLabel = newLabel("Enter a text", SwingConstants.CENTER)
textField = newTextField()
textField.addKeyListener(def(type, event) {
- lengthLabel.setText(length(textField.getText()))
+ lengthLabel.setText(textField.getText().length)
})
statusPanel = newPanel()
diff --git a/examples/forms/samobot_chat.own b/examples/forms/samobot_chat.own
index 5f37748..2e4515a 100644
--- a/examples/forms/samobot_chat.own
+++ b/examples/forms/samobot_chat.own
@@ -1,6 +1,4 @@
-use "std"
-use "http"
-use "forms"
+use ["std", "http", "forms"]
chatHistory = newLabel("Чат с самоботом
")
messageField = newTextField()
@@ -13,7 +11,7 @@ def onSend() {
if (length(text) == 0) return 0
messageField.setText("")
chatHistory.setText(chatHistory.getText() + "
вы > " + text)
- thread(::http, "http://annimon.com/json/bot.php", "POST", {"text": text}, def(answer) {
+ thread(::http, "https://annimon.com/json/bot.php", "POST", {"text": text}, def(answer) {
chatHistory.setText(chatHistory.getText() + "
бот > " + answer)
})
}
diff --git a/examples/functions/calculator.own b/examples/functions/calculator.own
index 571cbe8..9e6355d 100644
--- a/examples/functions/calculator.own
+++ b/examples/functions/calculator.own
@@ -20,18 +20,18 @@ def calculate(expression) {
def parseNumber() {
buffer = ""
- while (pos < len && isDigit(charAt(expression, pos))) {
- buffer += toChar(charAt(expression, pos))
+ while (pos < len && isDigit(expression.charAt(pos))) {
+ buffer += toChar(expression.charAt(pos))
pos++
}
return number(buffer)
}
def parseOperation() {
- while (pos < len && !arrayKeyExists(toChar(charAt(expression, pos)), operations)) {
+ while (pos < len && !arrayKeyExists(toChar(expression.charAt(pos)), operations)) {
pos++
}
- return operations[toChar(charAt(expression, pos++))]
+ return operations[toChar(expression.charAt(pos++))]
}
num1 = parseNumber()
@@ -43,4 +43,4 @@ def calculate(expression) {
println calculate("2+2")
println calculate("400*16")
println calculate("400/160")
-println calculate("3>4")
\ No newline at end of file
+println calculate("3>4")
diff --git a/examples/functions/stream.own b/examples/functions/stream.own
index 2deb5cc..d654635 100644
--- a/examples/functions/stream.own
+++ b/examples/functions/stream.own
@@ -1,5 +1,4 @@
-use "std"
-use "functional"
+use ["std", "functional"]
println "x, square(x), cube(x) for even numbers"
data = [1,2,3,4,5,6,7,8,9]
@@ -23,4 +22,4 @@ def reverse(container) {
result[size - i - 1] = container[i]
}
return result
-}
\ No newline at end of file
+}
diff --git a/examples/network/github_timeline.own b/examples/network/github_timeline.own
index 79efbeb..d6d78e2 100644
--- a/examples/network/github_timeline.own
+++ b/examples/network/github_timeline.own
@@ -1,12 +1,9 @@
-use "std"
-use "http"
-use "json"
-use "functional"
+use ["std", "http", "json", "functional", "date"]
header = "* Prints current GitHub timeline *"
-println "*" * length(header)
+println "*" * header.length
println header
-println "*" * length(header)
+println "*" * header.length
// Executes in main thread
//http("https://api.github.com/events", def(r) {
@@ -19,7 +16,7 @@ thread(::http, "https://api.github.com/events", def(r) {
})
def show_github_events(event) {
- println event.created_at
+ println event.created_at.formatTzDate()
println "User: https://github.com/" + event.actor.login
println github_event_type(event)
println "-" * 50
@@ -41,3 +38,6 @@ def github_event_type(event) {
case type : type + " on " + repo
}
}
+
+def formatTzDate(str) = formatDate(parseTzDate(str), newFormat("yyyy-MM-dd HH:mm:ss"))
+def parseTzDate(str) = parseDate(str, newFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"))