Commit Graph

385 Commits

Author SHA1 Message Date
Pragmatic Software b3081b9e9f Add compiler_vm support for clang
Also renamed c11.pm to _c_base.pm and set the C languages to inherit
from _c_base.pm instead of c11.pm.
2015-01-15 01:21:18 -08:00
Pragmatic Software bfd373814c Set compiler_watchdog.pl breakpoint one previous end of main
The clang compiler doesn't generate debug info for line number at the
closing } bracket terminating the main function.

Setting the breakpoint to the line immediately before that works for
gcc and clang.
2015-01-15 01:18:35 -08:00
Pragmatic Software b6b90ffa49 Significantly refactor compiler_vm module
The compiler_vm module has been significantly refactored into distinct
modules in order to better facilitate the addition of other languages
and compilers.

Currently there is support for C89, C99 and C11 using gcc, as well as
support for Perl.

This is an initial work-in-progress commit and there are still some minor
rough edges to polish up.
2015-01-14 21:51:17 -08:00
Pragmatic Software 6f3d5f3179 Allow case-insensitive section-matching in c99std/c11std 2015-01-06 15:35:40 -08:00
Pragmatic Software 4116afb86d Improve text search in c99std/c11std modules
Regular expression special characters are now escaped.
A trailing word-boundary is added to limit results to exact matches.
2014-12-29 23:24:54 -08:00
Pragmatic Software f9e2c3fb49 CJeopardy improvements
- Reduce hint wait-period from 60 seconds to 30 seconds
- Improve ignoring of common leading words in answers
- Correct several grammar mistakes/typos in questions
2014-12-29 23:19:32 -08:00
Pragmatic Software ba59edb040 Update paren.py module to improve parentheses verbosity 2014-12-20 19:44:40 +00:00
Pragmatic Software 79796f9710 CGrammar: Add istrue to static assertion expression; add ability to customize istrue truthiness result, add isfalse 2014-09-19 04:17:37 +00:00
Pragmatic Software 9d3c8c0285 CGrammar: Correct translation of sizeof in static assertions 2014-09-19 03:54:13 +00:00
Pragmatic Software da352f64d7 compiler_vm: Save command-line args and compiler flags to history; handle \b properly; other misc fixes 2014-09-11 13:37:41 +00:00
Pragmatic Software 2529d49aac CGrammar: Remove excessive "result of the expression" for parenthesized expressions 2014-09-09 07:20:42 +00:00
Pragmatic Software d40361a2bf Disallow ?, [, ], and ~~ in math.pl 2014-08-31 20:27:40 +00:00
Pragmatic Software fa2e3e4b5d Dump LWP error text if get_title.pl fails to fetch webpage 2014-08-31 20:26:24 +00:00
Pragmatic Software 838f232d68 Update C Jeopardy questions 2014-08-31 20:24:08 +00:00
Pragmatic Software a5ede3307e Update C facts module 2014-08-31 20:23:27 +00:00
Pragmatic Software 021401b538 C Jeopardy: Show correctness percentage when an answer is almost correct; recommend #cjeopardy channel when attempting to play via /msg 2014-08-31 20:21:09 +00:00
Pragmatic Software 749fda0ff3 Add HHGTTG easter egg to math.pl 2014-08-13 16:55:04 +00:00
Pragmatic Software c03a1288b6 CGrammar: Fix a|an substitution to an|a 2014-08-10 05:31:29 +00:00
Pragmatic Software 527e8490a3 CGrammar: Add offsetof 2014-08-10 05:03:37 +00:00
Pragmatic Software 74cffe091c C Jeopardy: More improvements to question database 2014-08-04 21:51:23 +00:00
Pragmatic Software 18d245cf10 C Jeopardy: Now says "Too slow!" if someone else also answers the correct answer within 15 seconds 2014-08-04 06:25:56 +00:00
Pragmatic Software 7d6e505d9f C Jeopardy: Clean up some typoes in the questions 2014-08-04 05:20:28 +00:00
Pragmatic Software bf9fe32682 C Jeopardy: Fix and clean-up some questions; fix substitution if "is" in answers 2014-08-04 00:35:41 +00:00
Pragmatic Software 4bf78bf978 C Jeopardy: Add tons of new questions; add support for supplemental tidbits; don't obscure dashes and underscors in hints 2014-08-03 22:20:54 +00:00
Pragmatic Software 55bdc5b930 Enforce CPU limit on expand_macro module 2014-08-03 22:02:36 +00:00
Pragmatic Software bc871bf4b2 C facts: Improve generation of C facts; update cfacts.txt with new facts 2014-08-02 16:01:51 +00:00
Pragmatic Software 9651847165 C Jeopardy: Correct showing of text/answer in "close enough" output due to recent change in handling of typographical case 2014-07-29 20:21:06 +00:00
Pragmatic Software 236b4c1d06 C Jeopardy: Add time-limit to hints 2014-07-29 20:07:48 +00:00
Pragmatic Software 88dc009ae7 C Jeopardy: Show correct typographical case for answers 2014-07-29 19:00:06 +00:00
Pragmatic Software d49700d1e1 C Jeopardy: Add hint command to slowly reveal answer when stumped 2014-07-29 17:30:12 +00:00
Pragmatic Software 2d0a490ed2 C Jeopardy: Fix minor inconsequential typo 2014-07-28 16:28:11 +00:00
Pragmatic Software 00fd1eee89 C Jeopardy: Update question data with additional acceptable answers 2014-07-28 15:56:13 +00:00
Pragmatic Software 9978f0c793 C Jeopardy: Add shuffler to preventing repeating questions 2014-07-28 15:25:54 +00:00
Pragmatic Software 1f8445d3bc C Jeopardy: Add time-limit to `cjeopardy` command. The current question will be shown if within this time-limit, otherwise a new question is shown 2014-07-28 07:45:05 +00:00
Pragmatic Software 4b2abf316f Add C Jeopardy module 2014-07-28 04:29:05 +00:00
Pragmatic Software cf63d9d46a compiler_vm: maintain original ordering of statements before, after and between functions instead of shoving everything to the top or into main 2014-07-23 21:27:09 +00:00
Pragmatic Software 491b4243ad More clean-up of C facts 2014-07-23 20:16:10 +00:00
Pragmatic Software d266e04284 More clean-up of C facts 2014-07-22 09:45:36 +00:00
Pragmatic Software 978c6b1f9d Fix typo in C facts: `simple` -> `simply` 2014-07-22 03:10:10 +00:00
Pragmatic Software c04896aa32 Fix up a couple more C facts misparses 2014-07-22 03:08:56 +00:00
Pragmatic Software d90c845a3b Clean-up some misparsed C facts 2014-07-22 02:14:44 +00:00
Pragmatic Software bcf76471c8 Add `cfact` module 2014-07-22 01:46:16 +00:00
Pragmatic Software da7a827c01 CGrammar: Add "result of the expression" to assignment expressions with spaces; remove extraneous trailing "Do nothing" 2014-07-21 21:27:22 +00:00
Pragmatic Software de375e63a1 CGrammar: Add _Generic; fix issue with compound-literals 2014-07-21 07:11:11 +00:00
Pragmatic Software fd89a4d0f4 CGrammar: Correct placement of "to" in conditional operator; restore "Begin block" and "End block" for nested compound statements 2014-07-18 03:52:16 +00:00
Pragmatic Software 3e47f6bc58 CGrammar: Emit "Do nothing" for empty case statements 2014-07-18 00:39:06 +00:00
Pragmatic Software 7f293450ef CGrammar: Fix for loop init and break statement 2014-07-17 19:04:09 +00:00
Pragmatic Software a59cc20128 CGrammar: Improve if/else in switch block, and improve "Fall through to next case" 2014-07-17 18:51:29 +00:00
Pragmatic Software af8787797a CGrammar: Improve translation of switch/case block 2014-07-17 18:36:09 +00:00
Pragmatic Software 46a0184791 CGrammar: Translate ' ' to "a space"; touch up translation of "the result of the expression the result of the function" to just "the result of the function" 2014-07-16 13:36:40 +00:00