Updated V for Go developers (markdown)

Turiiya 2024-04-10 02:45:45 +02:00
parent 16f6b583ec
commit b77b961752

@ -5,81 +5,102 @@
<tr><td colspan="2" align="center">Hello World</td></tr> <tr><td colspan="2" align="center">Hello World</td></tr>
<tr> <tr>
<td> <td>
<pre class="highlight highlight-source-v">
```go
package main package main
import "fmt" import "fmt"
func main() { func main() {
fmt.Println("Hello World!") fmt.Println("Hello World!")
} }
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
println('Hello World!') println('Hello World!')
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Slice initialization</td></tr> <tr><td colspan="2" align="center">Slice initialization</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
numbers := []int{1, 2, 3, 4} numbers := []int{1, 2, 3, 4}
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
numbers := [1, 2, 3, 4] numbers := [1, 2, 3, 4]
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Add an element to a slice</td></tr> <tr><td colspan="2" align="center">Add an element to a slice</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
numbers = append(numbers, 5) numbers = append(numbers, 5)
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
numbers &lt;&lt; 5 ```v
</pre> numbers << 5
```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Printing a slice</td></tr> <tr><td colspan="2" align="center">Printing a slice</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
fmt.Println(numbers) fmt.Println(numbers)
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
println(numbers) println(numbers)
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Filtering a slice</td></tr> <tr><td colspan="2" align="center">Filtering a slice</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
even := make([]int, 0) even := make([]int, 0)
for _, num := range numbers { for _, num := range numbers {
if num % 2 == 0 { if num % 2 == 0 {
even = append(even, num) even = append(even, num)
} }
} }
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
even := numbers.filter(it % 2 == 0) even := numbers.filter(it % 2 == 0)
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Checking if a slice contains an element</td></tr> <tr><td colspan="2" align="center">Checking if a slice contains an element</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
contains := false contains := false
for _, num := range numbers { for _, num := range numbers {
if num == x { if num == x {
@ -87,18 +108,22 @@ for _, num := range numbers {
break break
} }
} }
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
contains := x in numbers contains := x in numbers
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Reading a file</td></tr> <tr><td colspan="2" align="center">Reading a file</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
import ( import (
"io/ioutil" "io/ioutil"
"log" "log"
@ -109,22 +134,26 @@ if err != nil {
return return
} }
text := string(b) text := string(b)
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
import os import os
text := os.read_file(path) or { text := os.read_file(path) or {
eprintln(err) eprintln(err)
return return
} }
</pre> ```
</td> </td>
</tr> </tr>
<tr><td colspan="2" align="center">Testing a function</td></tr> <tr><td colspan="2" align="center">Testing a function</td></tr>
<tr> <tr>
<td> <td>
<pre>
```go
package greeter_test package greeter_test
import ( import (
"testing" "testing"
@ -134,14 +163,17 @@ func TestHello(t *testing.T) {
t.Fatalf("Hello() failed") t.Fatalf("Hello() failed")
} }
} }
</pre> ```
</td> </td>
<td valign="top"> <td valign="top">
<pre>
```v
fn test_hello() { fn test_hello() {
assert hello() == 'hello' assert hello() == 'hello'
} }
</pre> ```
</td> </td>
</tr> </tr>
</table> </table>