Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testing makesure on new "bytecode" branch of GoAWK? #100

Closed
benhoyt opened this issue Jan 23, 2022 · 4 comments
Closed

Testing makesure on new "bytecode" branch of GoAWK? #100

benhoyt opened this issue Jan 23, 2022 · 4 comments

Comments

@benhoyt
Copy link

benhoyt commented Jan 23, 2022

Hi @xonixx, I was going to email you but couldn't find an address, so hopefully this will do. :-)

I'm reaching out because I'm wondering if you'd be able to test a new branch of GoAWK I'm planning to merge. The new branch uses a bytecode compiler+interpreter instead of the simple tree-walking interpreter presently used. I'm not asking you to test the performance (I'm doing plenty of that), but the correctness. The branch should be fully backwards compatible with the existing version, no code changes required. GoAWK does have plenty of tests (its own tests, plus a subset of the Gawk tests), but this is a pretty big change, so I'm looking to get more eyeballs on it.

Would you be able to test the bytecode PR on any makesure tests or projects you have. Even just a couple of sanity checks would be much appreciated. Thanks!

@benhoyt
Copy link
Author

benhoyt commented Jan 23, 2022

Oh, I forgot the PR link. Updated, and also adding it here: benhoyt/goawk#88

@xonixx
Copy link
Owner

xonixx commented Jan 23, 2022

Hey @benhoyt. As far as makesure's test suite is concerned, the bytecode branch of GoAWK works without issues:

(added small code to test this branch)

$ ./makesure tested_goawk_branch 
  goal 'installed_goawk_branch' [already satisfied].
  goal 'tested_goawk_branch' ...
  goal 'tush_installed' [already satisfied].
  goal 'debug' ...
/home/xonix/proj/makesure/soft/goawk_bytecode: v1.14.0
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
  goal 'debug' took 0.011 s
  goal 'prepared4tests' [empty].
  goal 'tests/0_basic.tush' ...
TESTS PASSED : tests/0_basic.tush
  goal 'tests/0_basic.tush' took 0.108 s
  goal 'tests/1_goals.tush' ...
TESTS PASSED : tests/1_goals.tush
  goal 'tests/1_goals.tush' took 0.3 s
  goal 'tests/2_mydir.tush' ...
TESTS PASSED : tests/2_mydir.tush
  goal 'tests/2_mydir.tush' took 0.615 s
  goal 'tests/3_loop.tush' ...
TESTS PASSED : tests/3_loop.tush
  goal 'tests/3_loop.tush' took 0.037 s
  goal 'tests/4_trace.tush' ...
TESTS PASSED : tests/4_trace.tush
  goal 'tests/4_trace.tush' took 0.209 s
  goal 'tests/5_shell.tush' ...
TESTS PASSED : tests/5_shell.tush
  goal 'tests/5_shell.tush' took 0.102 s
  goal 'tests/6_reached_if.tush' ...
TESTS PASSED : tests/6_reached_if.tush
  goal 'tests/6_reached_if.tush' took 0.07 s
  goal 'tests/7_options.tush' ...
TESTS PASSED : tests/7_options.tush
  goal 'tests/7_options.tush' took 0.103 s
  goal 'tests/8_timing.tush' ...
TESTS PASSED : tests/8_timing.tush
  goal 'tests/8_timing.tush' took 0.174 s
  goal 'tests/9_prelude.tush' ...
TESTS PASSED : tests/9_prelude.tush
  goal 'tests/9_prelude.tush' took 0.113 s
  goal 'tests/10_define.tush' ...
TESTS PASSED : tests/10_define.tush
  goal 'tests/10_define.tush' took 0.553 s
  goal 'tests/11_goal_glob.tush' ...
TESTS PASSED : tests/11_goal_glob.tush
  goal 'tests/11_goal_glob.tush' took 0.307 s
  goal 'tests/12_errors.tush' ...
TESTS PASSED : tests/12_errors.tush
  goal 'tests/12_errors.tush' took 0.047 s
  goal 'tests/13_doc.tush' ...
TESTS PASSED : tests/13_doc.tush
  goal 'tests/13_doc.tush' took 0.076 s
  goal 'tests/14_private.tush' ...
TESTS PASSED : tests/14_private.tush
  goal 'tests/14_private.tush' took 0.058 s
  goal 'tests/15_lib.tush' ...
TESTS PASSED : tests/15_lib.tush
  goal 'tests/15_lib.tush' took 0.203 s
  goal 'tests/16_define_validation.tush' ...
TESTS PASSED : tests/16_define_validation.tush
  goal 'tests/16_define_validation.tush' took 0.078 s
  goal 'tests/17_empty_prelude.tush' ...
TESTS PASSED : tests/17_empty_prelude.tush
  goal 'tests/17_empty_prelude.tush' took 0.052 s
  goal 'tests/18_vars_priority.tush' ...
TESTS PASSED : tests/18_vars_priority.tush
  goal 'tests/18_vars_priority.tush' took 0.135 s
  goal 'tests/19_optimize_goals.tush' ...
TESTS PASSED : tests/19_optimize_goals.tush
  goal 'tests/19_optimize_goals.tush' took 0.056 s
  goal 'tests/20_list_goals.tush' ...
TESTS PASSED : tests/20_list_goals.tush
  goal 'tests/20_list_goals.tush' took 0.068 s
  goal 'tests/21_parsing.tush' ...
TESTS PASSED : tests/21_parsing.tush
  goal 'tests/21_parsing.tush' took 0.347 s
  goal 'tests/22_nat_order.tush' ...
TESTS PASSED : tests/22_nat_order.tush
  goal 'tests/22_nat_order.tush' took 0.495 s
  goal 'tests/23_bash_glob.tush' ...
TESTS PASSED : tests/23_bash_glob.tush
  goal 'tests/23_bash_glob.tush' took 0.101 s
  goal 'tests/24_define_everywhere.tush' ...
TESTS PASSED : tests/24_define_everywhere.tush
  goal 'tests/24_define_everywhere.tush' took 0.054 s
  goal 'tests/200_update.tush' ...
TESTS PASSED : tests/200_update.tush
  goal 'tests/200_update.tush' took 12.967 s
  goal 'tests/*.tush' [empty].
  goal 'tested' [empty].
  total time 17.469 s
  goal 'tested_goawk_branch' took 17.512 s
  total time 17.545 s

@benhoyt
Copy link
Author

benhoyt commented Jan 23, 2022

Thank you, I appreciate it!

@xonixx
Copy link
Owner

xonixx commented Jan 23, 2022

@benhoyt I've also tested the mentioned branch on https://github.com/xonixx/gron.awk and https://github.com/xonixx/awk_lab.
All good in terms of correctness. The only thing found: benhoyt/goawk#93.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants