Commit Graph

673 Commits (c3409062805e9520df7f96a14a66762857d7b904)

Author SHA1 Message Date
Delyan Angelov a4cbe78d97 compiler: streamline main function handling
* compiler: streamline C main function generation

* fix most tests

* compiler: fix for 'go update()' in graph.v . More precise parser error messages.

* Fix temporarily examples/hot_reload/message.v by using os inside it (os.clear).

* Make graph.v easier to quickly modify by defining y outside the loop.

* Fix failure of /v/nv/compiler/tests/defer_test.v when run with 'v -g' (#line directive was not on its own line, but right after } ).

* Do not pass the os.args to tests, even if the tests import os (they are more stable when run in a controlled environment).

* fix declared and not used in the js backend.

* fix js main => main__main too.
2019-09-28 20:42:29 +03:00
Delyan Angelov 3fbfc5fbd4 repl: tests show difference (in color where available) 2019-09-25 22:00:56 +03:00
Alexander Medvednikov bf1ee28194 ui: Objective-C @interface support for Cocoa; minor clean-ups 2019-09-23 15:54:17 +03:00
joe-conigliaro 23c84516e2 compiler: error on unused imports 2019-09-23 13:42:20 +03:00
Zaoqi 104e4c9fc7 github actions: simplify ci.yml, test js backend on windows 2019-09-21 18:34:17 +03:00
Alexander Medvednikov 90e26a34c5 scanner: better interpolation names + disable vweb html test for now 2019-09-21 01:27:13 +03:00
Alexander Medvednikov 79abc0c16f vweb: fix html example 2019-09-21 01:10:37 +03:00
iRedMail 55720e7f98 tetris: add "module main" 2019-09-20 19:05:14 +03:00
Zaoqi 5a03eaca89 .gitignore: prepend / 2019-09-20 17:06:00 +03:00
Alexander Medvednikov 0a2f7a6ba7 fix tests 2019-09-17 13:37:25 +03:00
unknown-v 5f43a61e0d examples: update `[0;n]` to `[0].repeat(n)` 2019-09-16 01:55:54 +03:00
Delyan Angelov 35f927e64e repl: add some timing statistics when running REPL test files 2019-09-15 18:08:16 +03:00
joe-conigliaro f077fbd32d vlib: change `[0;n]` to `[0].repeat(n)` 2019-09-15 12:26:05 +03:00
Carlos Esquerdo Bernat 8a77d4482c vweb: fix headers 2019-09-05 15:46:24 +03:00
Joe Conigliaro 2ae2ede06a fix *Type warning in examples 2019-09-04 19:48:19 +03:00
Delyan Angelov ecb661f719 tetris: fix &Foo instead of *Foo warnings. 2019-09-03 11:39:06 +03:00
Alexander Medvednikov dae4c4b83f
final linguist test 2019-08-30 13:57:53 +03:00
kawa-yoiko 6d35f68242 parser: restore outer variable in index exprs 2019-08-30 12:16:39 +03:00
joe-conigliaro 32683ad6fd sync: fix mutex on win & waitgroup (all os) update. fixes news_fetcher example on win (#1776) 2019-08-29 11:48:03 +03:00
Robin Martijn d88315d789 news_fetcher: unlock mutex before terminating 2019-08-26 20:04:14 +03:00
Delyan Angelov aa438c7c3f os: fix exec() and get_raw_line(); fix Windows tests and examples 2019-08-26 13:51:48 +03:00
Alexander Medvednikov f61b14584a remove "import const" everywhere 2019-08-23 00:09:03 +03:00
Alexander Medvednikov 75b632baad examples: use == instead of = in pg/customer.v 2019-08-22 22:33:57 +03:00
Alexander Medvednikov abe61e28fe examples: fix tetris 2019-08-22 22:28:27 +03:00
Delyan Angelov 1ddc9dc604 orm: allow variables like q.nr_orders in queries too. 2019-08-20 21:35:13 +03:00
Delyan Angelov cf06faf09b orm: allow both integer and string arguments in db.select and db.select limit 1 2019-08-20 17:32:39 +03:00
Alexander Medvednikov 707ddba143 examples: rename hot_code_reloading to hot_reload 2019-08-20 00:08:45 +03:00
S-YOU 0066afe7fc mysql module 2019-08-18 17:24:43 +03:00
Alexander Medvednikov 100bb7c54c os: clean up windows functions 2019-08-17 16:17:43 +03:00
Massimiliano Bertinetti 845ae8cf5a tetris: Added instruction for Arch / Manjaro Linux 2019-08-17 15:53:06 +03:00
Nicolas Sauzede 4760fea489 examples/tetris: use better unique colors, implement game over/pause 2019-08-17 02:56:09 +03:00
unknown-v 49205dcce3 examples: fix maps warnings 2019-08-17 02:55:11 +03:00
Alexander Medvednikov 89d0b75311 vweb: remove the broken test for now 2019-08-13 01:15:09 +03:00
Alexander Medvednikov a11961b0d3 vweb: make mime_types a const 2019-08-13 01:04:26 +03:00
Alexander Medvednikov 6002511052 pg: remove printf 2019-08-12 16:41:41 +03:00
Alexander Medvednikov 8c3475b902 generate `.str()` for all arrays 2019-08-11 22:39:45 +03:00
Alexander Medvednikov 68a4c125c5 examples/tetris: ttf font for printing the score 2019-08-10 13:37:15 +02:00
Julian Schurhammer 1864e92ff4 parser: disallow statements after a return, branch check $if, $else, switch, and loops correctly 2019-08-10 10:26:42 +02:00
Alexander Medvednikov d4441e4353 freetype: clean up new_context() 2019-08-10 07:13:25 +02:00
Alexander Medvednikov 11c2f634f3 examples/tetris: better font initialization 2019-08-10 07:13:25 +02:00
Rendims fdb1433c24 Makefile: rebuild compiler when sources change 2019-08-10 00:11:17 +02:00
Nicolas Sauzede efa540e883 examples: tetris: draw score 2019-08-09 13:03:29 +02:00
Julian Schurhammer 61983a6799 parser: check that functions return in all if/else branches 2019-08-08 09:49:56 +02:00
Alexander Medvednikov 4b69d43f9f fix examples 2019-08-07 14:16:10 +02:00
Alexander Medvednikov 7a7b5040e2 http: fix response headers and status code; clean up ft and gg 2019-08-06 03:06:27 +02:00
Alexander Medvednikov aac8503d83 http: use optionals (finally) 2019-07-31 22:15:24 +02:00
jilio 6294c7878e vweb: recursive handle_static with mime types 2019-07-31 06:10:53 +02:00
Alexander Medvednikov ad8b105b2c vweb example 2019-07-30 21:15:17 +02:00
Richard Warburton 07ed320110 sync: WaitGroup 2019-07-30 15:06:16 +02:00
Delyan Angelov 4a1970a322 http: return ?string 2019-07-29 19:18:26 +02:00
Alexander Medvednikov 2ac579ca0a wrap up the new mut check 2019-07-25 14:13:35 +02:00
Alexander Medvednikov 505f784047 fix log example 2019-07-24 17:59:54 +02:00
yep84 94a599d630 log: allow file logging 2019-07-24 17:50:29 +02:00
Alexander Medvednikov facf55cbc0 examples/news_fetcher: don't print the ids 2019-07-24 00:56:42 +02:00
lutherwenxu 4f11185231 Fix news_fetcher example
News_fetcher now uses proper numbering with mutex lock instead of the cursor
2019-07-24 00:54:16 +02:00
d2verb e25664dfbf Update .gitignore & add examples/hot_code_reloading/.gitignore 2019-07-23 13:30:02 +02:00
Alexander Medvednikov 89042b0f97 examples/tetris: an extra collision check 2019-07-23 03:29:11 +02:00
Alexander Medvednikov a2a0b149b2 examples/graph: update the graph instantly; add a couple of graphs 2019-07-23 00:24:42 +02:00
Alexander Medvednikov 5933f2107a examples/graph: a small import fix 2019-07-22 13:45:02 +02:00
Alexander Medvednikov 5d188130e5 fix memory free 2019-07-21 16:30:10 +02:00
Alexander Medvednikov 975286302c fix Tetris onkeydown 2019-07-21 11:56:43 +02:00
Alexander Medvednikov 7f512eaf72 examples/hot_code_reloading: graph builder improvements 2019-07-20 17:59:40 +02:00
Alexander Medvednikov 769cda1d1f simplify gg; remove forced OpenGL dependency; graph builder /w hot code reloading 2019-07-20 16:06:15 +02:00
Alexander Medvednikov 26ed3fb372 examples/hot_code_reloading: graph builder 2019-07-19 13:15:47 +02:00
Alexander Medvednikov c35adbea91 vfmt fixes 2019-07-17 21:00:39 +02:00
Alexander Medvednikov bdf1717703 examples/bounce.v: minor fixes 2019-07-17 02:55:28 +02:00
Alexander Medvednikov 8c516bec4f [][]int 2019-07-16 13:56:48 +02:00
Alexander Medvednikov 48d5650765 examples/hot_code_reloading: move the square faster 2019-07-16 02:23:09 +02:00
Alexander Medvednikov 840e496a51 force snake_case in variable names 2019-07-15 22:53:33 +02:00
Alexander Medvednikov b36a9f7e55 glfw always on top 2019-07-15 19:23:09 +02:00
Delyan Angelov 37aff9b107 hot reload: no -sanitize is needed anymore, -live is now enough on both Linux and MacOS X
* hot reload for GL programs: force the main executable (the shared library loader) to be build with -rdynamic flag, when -live is passed to v compiler.

* hot reload: optimize away a redundant load_so/0 call at the start of the reload_so thread.

* hot code reload for MacOSX requires -flat_namespace flag instead of -rdynamic (on linux).
2019-07-15 17:32:00 +02:00
Carl Bordum Hansen 92fb9c8b94 VCasino was printing the opposite of intended 2019-07-15 17:20:16 +02:00
Delyan Angelov 60ad97c4fb fix hot code reloading for GUI example bounce on linux: works when compiled with 'v -live -sanitize bounce.v' .
It crashes with SIGSEGV, when -sanitize is not given.
Also thirdparty/glad/glad.o should be build with -fPIC .
2019-07-15 12:28:35 +02:00
Alexander Medvednikov 3b1964e9df migrate remaining code to the new maps 2019-07-14 22:26:21 +02:00
d2verb 2cb12b4f4e rand: change rand.seed() to receive seed value 2019-07-13 18:17:45 +02:00
d2verb 14bbf766b0 Update examples/.gitignore 2019-07-12 20:46:58 +02:00
Alexander Medvednikov 28d379dc7b make glfw work on Windows 2019-07-12 05:04:27 +02:00
Alexander Medvednikov 045d480c8c clean up the examples a bit 2019-07-07 22:09:08 +02:00
Alexander Medvednikov de8dc4cddb hot code reloading examples 2019-07-07 22:02:27 +02:00
pverghese 144d7ca362 Added benchmarks 2019-07-07 01:19:54 +02:00
vertical222 8c3e47c9de nbody.v fixes 2019-07-07 01:18:04 +02:00
pverghese 758267254d Added Benchmark-games: spectralnorm 2019-07-06 16:49:30 +02:00
vertical222 0f8682d2f0 Create nbody.v 2019-07-06 12:03:30 +02:00
d2verb 504c0d6077 Modify examples/.gitignore 2019-07-04 22:05:12 +02:00
musou1500 668646f8f9 add `str` function for `rune` 2019-07-01 17:36:23 +02:00
archanpatkar 235a7ecd7f Restructured termcolor to term module 2019-07-01 17:26:23 +02:00
Zaoqi 437b32fe78 fmt: `id []typ` 2019-06-30 13:06:45 +02:00
Alexander Medvednikov 3ddbe015b4 bring back examples 2019-06-29 12:34:32 +02:00
Alexander Medvednikov 4594d78bd6 move all vlib modules to vlib/ 2019-06-29 12:00:31 +02:00
aguspiza bed7440ebb tetris improvements
added getexepath() to os module
added some wrapper functions to glfw
removed hardcored path in gg module
better tetris example exit and resource loading
2019-06-28 21:40:47 +02:00
Alexander Medvednikov 4aab26d3e3 `mut v :=` update examples 2019-06-28 15:24:48 +02:00
Alexander Medvednikov bd49977feb fix single file programs without `fn main` and REPL (allow imports,
function definitions, consts, etc)
2019-06-28 13:43:32 +02:00
Alexander Medvednikov 6824e6e7db Replace all remaining C code with V in the compiler and vlib (hoorah!) 2019-06-27 23:11:27 +02:00
lutherwenxu b464adec43 Add the log example to .gitignore of examples
The compiled log file should no longer cause a file to be added to the git repo during `make test`.
2019-06-27 13:49:57 +02:00
Alexander Medvednikov 76bf732e63 builtin: public/private functions, remove lots of duplicate functionality
(string.eq, compare_strings, etc)
2019-06-27 13:29:31 +02:00
Alexander Medvednikov b018237c72 1 2019-06-27 12:51:53 +02:00
Alexander Medvednikov 90c0791345 replace ugly `tos2(bytes)` with `string(bytes)` 2019-06-27 12:50:02 +02:00
ofunc 2ee6ca1b8b Rewrite time module 2019-06-27 12:02:47 +02:00
wfhtqp 9ac653c3e3 add log and rename colors 2019-06-27 02:20:04 +02:00
thomas-senechal e57fbeee41 examples: VCasino 2019-06-27 02:05:05 +02:00
Alexander Medvednikov ee09cde583 CI test successful 2019-06-26 21:36:44 +02:00
Alexander Medvednikov fcf60306c4 CI test: break tetris 2019-06-26 21:33:21 +02:00
whoami e7f2babb5d separate .gitignore for examples (#667)
it will be easier to move the examples to a separate repository if it increases
2019-06-26 18:06:00 +02:00
Alexander Medvednikov 92ecd0ca7c word_counter: handle bad path 2019-06-26 18:01:31 +02:00
Ryota.I (yabu) 61e4367aa8 👍 Fix up redundant type declare and remove space (#603) 2019-06-26 16:39:40 +02:00
Alexander Medvednikov b00a47be66 Revert "add log replace color"
This reverts commit 8ef27f0bb3.
2019-06-26 01:28:00 +02:00
nzlov 8ef27f0bb3 add log replace color 2019-06-26 01:26:06 +02:00
Wink Saville 67f68db530 Add several gitignore files
- compiler/.gitignore and remove the corresponding entries in root/.gitignore.
 - examples/game_of_life/.gitignore
 - examples/tetris/.gitignore
 - examples/word_counter/.gitignore
2019-06-26 01:22:35 +02:00
Wink Saville 82a65c75a9 Fix examples/game_of_life/README.md
- Fix run command in README.md
2019-06-26 01:19:47 +02:00
Wink Saville 8ceb110412 Add .gitignore to examples 2019-06-25 23:32:11 +02:00
Steve Phillips 539bebcc22 examples/news_fetcher.v: now displays story URL, not just title 2019-06-24 19:28:36 +02:00
Alex Medvednikov bfd5fb373c
Update README.md 2019-06-24 15:02:53 +02:00
Alexander Medvednikov be62ac35a8 examples: fix game of life demo 2019-06-24 15:00:31 +02:00
Alexander Medvednikov f6fb5aa827 examples: game of life 2019-06-24 14:58:47 +02:00
Alexander Medvednikov c156b1b1f8 add the font 2019-06-23 13:17:56 +02:00
Alexander Medvednikov 64a5dc3f23 json.v example 2019-06-23 12:58:53 +02:00
Alexander Medvednikov a69e6febbc use new exit() everywhere 2019-06-23 10:41:45 +02:00
chai2010 978ec58fe3 all: add copyright 2019-06-23 09:22:49 +02:00
superwhiskers 2c3b10da76 fix the word counter example 2019-06-23 09:18:39 +02:00
Phil Rukin b1553449d8 Add "hello world" example 2019-06-23 01:06:01 +02:00
Alexander Medvednikov f3a9e2a341 update the news fetcher example 2019-06-22 21:51:30 +02:00
Alexander Medvednikov 268c037e41 .gitattributes etc 2019-06-22 20:24:15 +02:00
Alexander Medvednikov d32e538073 V 0.0.12 open-source release 2019-06-22 20:20:28 +02:00