Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 30 Jul 2015 08:37:37 +0100] rev 510
Tests refactoring - use generated test cases to make sure all posibilities are tested.
Do not generate resource for all combinations, use PPCSetUpBeforeTearDownAfterResource
instead that delegates parser compilation to the testcase itself (it calls it's #setUpBefore
method).
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 31 Jul 2015 08:22:18 +0100] rev 509
Inline child of an action node only is its unnamed sequence node.
Named nodes should not be inlined as they should make a method.
There's little point in inlining non-sequence nodes, so don't enforce
inlining on those. Some (JK :-) may prefer them non-inlined (for
debugging purposes)
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 31 Jul 2015 08:16:54 +0100] rev 508
Temporarily disabled #acceptsEpsilon test in PPCTokenizingCodeGenerator>>visitChoiceNode:
JK should have a look and come up with proper solution.
Jan Vrany <jan.vrany@fit.cvut.cz> [Tue, 28 Jul 2015 07:16:10 +0100] rev 507
Workaround for stc bug.
Jan Vrany <jan.vrany@fit.cvut.cz> [Mon, 27 Jul 2015 16:28:48 +0100] rev 506
Added static analysis of blocks when inlining. Allow inlining only when block is functional
...i.e., does not access any shared state (in instance or class variables). If the block does
a self-send, the sent method has to be (transitively) functional too.
To allow for self-sends in action blocks, copy (transitively) self-sent methods to target
parser. This is safe as these self-sent methods are guarnateed to be functional.
Jan Vrany <jan.vrany@fit.cvut.cz> [Mon, 27 Jul 2015 10:21:41 +0100] rev 505
Post-merge fixes. PPCCodeBlock refactoring.
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 24 Jul 2015 19:42:09 +0100] rev 504
Portability fix: override #new for class that implements #initialize
#initialize is not sent by default.
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 24 Jul 2015 15:37:23 +0100] rev 503
Merge
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 24 Jul 2015 15:06:54 +0100] rev 502
Updated to PetitCompiler-JanVrany.135, PetitCompiler-Tests-JanKurs.93, PetitCompiler-Extras-Tests-JanVrany.16, PetitCompiler-Benchmarks-JanKurs.12
Name: PetitCompiler-JanVrany.135
Author: JanVrany
Time: 22-07-2015, 06:53:29.127 PM
UUID: 890178b5-275d-46af-a2ad-1738998f07cb
Ancestors: PetitCompiler-JanVrany.134
Name: PetitCompiler-Tests-JanKurs.93
Author: JanKurs
Time: 20-07-2015, 11:30:10.283 PM
UUID: 6473e671-ad70-42ca-b6c3-654b78edc531
Ancestors: PetitCompiler-Tests-JanKurs.92
Name: PetitCompiler-Extras-Tests-JanVrany.16
Author: JanVrany
Time: 22-07-2015, 05:18:22.387 PM
UUID: 8f6f9129-dbba-49b1-9402-038470742f98
Ancestors: PetitCompiler-Extras-Tests-JanKurs.15
Name: PetitCompiler-Benchmarks-JanKurs.12
Author: JanKurs
Time: 06-07-2015, 02:10:06.901 PM
UUID: cb24f1ac-46a4-494d-9780-64576f0f0dba
Ancestors: PetitCompiler-Benchmarks-JanKurs.11, PetitCompiler-Benchmarks-JanVrany.e29bd90f388e.20150619081300
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 19 Jun 2015 08:13:39 +0100] rev 501
Moved PPMappedActionParser>>asCompilerNode to protocol 'converting'
If in '*petitparser' it makes some problems with Monticello.
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 19 Jun 2015 07:14:07 +0100] rev 500
Use RBVariableNode>>name: to change variable's name.
The old way - `node token value:` is working in Pharo - there's no token in RBVariableNode. Sigh.
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 19 Jun 2015 06:53:06 +0100] rev 499
Portability fix: do not use #?
...use `notNil ifTrue:[] ifFalse:[]` instead. #? is not supported
in Squeak/Pharo
Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 18 Jun 2015 22:11:40 +0100] rev 498
Moved PPCMappedActionNode to category PetitCompiler-Nodes
Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 18 Jun 2015 22:05:13 +0100] rev 497
Do not use RBProgramNode>>variableNodesDo: as this method is not present in Pharo.
Use local helper method instead.
Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 18 Jun 2015 21:20:15 +0100] rev 496
Reverted fc3dbe5654c5: sending #copy should be OK (copy set's parent properly)