Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
January 2016
- 75 participants
- 1435 messages
Re: [Pharo-dev] Disable assertions (design by contract)
by Torsten Bergmann
Havent tried but would that still compile #assert: as used in SUnit?
Also remember discussion of this thread with similar topic:
http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/2015-June/111037…
Â
Bye
T.
Â
Gesendet:Â Donnerstag, 28. Januar 2016 um 15:36 Uhr
Von:Â "Marcus Denker" <marcus.denker(a)inria.fr>
An:Â "Pharo Development List" <pharo-dev(a)lists.pharo.org>
Betreff:Â Re: [Pharo-dev] Disable assertions (design by contract)
Hello,
Â
Yes, we should experiment with that.
Â
A compiler option is very easy to add⦠and easy to understand. And trivial to do.
Â
1) step one:
Â
add the following line at the start of OCASTTranslator>>emitMessageNode:
Â
self compilationContext optionDisableAssert ifTrue: [Â
aMessageNode selector == #assert: ifTrue: [ ^methodBuilder pushReceiver ]
 ].
Â
2) step 2. There is no step. 2 ;-). Maybe a better version would use plugin⦠changing the code generator like that
is a bit a hack. But it works.
Â
You can now turn off all sends to #assert: by enabling the #optionDisableAssert compiler option.
e.g. class wide by setting on the class side in
Â
compiler
^super compiler options: #(+ optionDisableAssert).
Â
Â
More magic is, of course, always possible later⦠I have some ideas.
Â
Marcus
Â
Â
On 28 Jan 2016, at 13:54, Aliaksei Syrel <alex.syrel(a)gmail.com> wrote:Â
Hi
Â
Assertions play an important role in design by contract. It is great to have assertions in Pharo out of box (Object>>#assert:). However in projects with many post- and precondition as also class invariants heavy usage of assertions decreases performance...
Â
Would it be possible to have a compiler setting (in setting browser) to enable/disable assertions and not compile them to bytecode? Compiler should ignore the whole assertion statement with removed condition. For example:self assert: self hugeInvariant.
with disabled assertion hugeInvariant must not be sent.
Â
Thanks,
Alex
Jan. 28, 2016
[pharo-project/pharo-core]
by GitHub
Branch: refs/tags/50552
Home: https://github.com/pharo-project/pharo-core
Jan. 28, 2016
[pharo-project/pharo-core] 873ed6: 50552
by GitHub
Branch: refs/heads/5.0
Home: https://github.com/pharo-project/pharo-core
Commit: 873ed660f5380158e79689575b0acbb70fb6ba94
https://github.com/pharo-project/pharo-core/commit/873ed660f5380158e7968957…
Author: Jenkins Build Server <board(a)pharo-project.org>
Date: 2016-01-28 (Thu, 28 Jan 2016)
Changed paths:
M HudsonBuildTools20.package/TestCommandLineHandler.class/instance/private/informResults_.st
A HudsonBuildTools20.package/TestCommandLineHandler.class/instance/private/inform_.st
M HudsonBuildTools20.package/TestCommandLineHandler.class/instance/private/testRunner.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/private - accessing/edgeToAdhereTo.st
A Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/private - layout/layoutChanged.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/recategorized/layoutChanged.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/testing/isAdheringToBottom.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/testing/isAdheringToLeft.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/testing/isAdheringToRight.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/testing/isAdheringToTop.st
R Morphic-Widgets-Windows.package/FullscreenMorph.class/instance/testing/isDockingBar.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/accessing/stderr.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/accessing/stdout.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/helper/handleSkip_of_.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/helper/printError_of_.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/helper/printFailure_of_.st
A SUnit-UI.package/CommandLineTestRunner.class/instance/helper/printPassOf_.st
A SUnit-UI.package/CommandLineTestRunner.class/instance/helper/printSkipOf_.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/helper/print_short_of_.st
R SUnit-UI.package/CommandLineTestRunner.class/instance/printing/printProgress.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/printing/printReport.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/printing/printTestCase_.st
A SUnit-UI.package/CommandLineTestRunner.class/instance/private/createStderr.st
A SUnit-UI.package/CommandLineTestRunner.class/instance/private/createStdout.st
M SUnit-UI.package/CommandLineTestRunner.class/instance/running/runCase_.st
A SUnit-UI.package/VTermTestRunner.class/README.md
A SUnit-UI.package/VTermTestRunner.class/definition.st
A SUnit-UI.package/VTermTestRunner.class/instance/helper/printError_of_.st
A SUnit-UI.package/VTermTestRunner.class/instance/helper/printFailure_of_.st
A SUnit-UI.package/VTermTestRunner.class/instance/helper/printPassOf_.st
A SUnit-UI.package/VTermTestRunner.class/instance/helper/print_short_of_.st
A SUnit-UI.package/VTermTestRunner.class/instance/printing/printProgress.st
A SUnit-UI.package/VTermTestRunner.class/instance/printing/printTestCase_.st
A SUnit-UI.package/VTermTestRunner.class/instance/private/createStderr.st
A SUnit-UI.package/VTermTestRunner.class/instance/private/createStdout.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - scripts/script50551.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - scripts/script50552.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - updates/update50551.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - updates/update50552.st
M ScriptLoader50.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
Log Message:
-----------
50552
17484 FullscreenMorph should not "be" a docking bar
https://pharo.fogbugz.com/f/cases/17484
17473 Some rpackages have a strange state
https://pharo.fogbugz.com/f/cases/17473
17488 tests from command line not always can be run with XTerm
https://pharo.fogbugz.com/f/cases/17488
http://files.pharo.org/image/50/50552.zip
Jan. 28, 2016
Re: [Pharo-dev] Disable assertions (design by contract)
by Denis Kudriashov
Another option can be based on meta links like conditional breakpoints.
(Assertion with: [condition])
node: node;
install
And It can be integrated in editor like breakpoints
Jan. 28, 2016
[pharo-project/pharo-core]
by GitHub
Branch: refs/tags/50551
Home: https://github.com/pharo-project/pharo-core
Jan. 28, 2016
[pharo-project/pharo-core] d30f55: 50551
by GitHub
Branch: refs/heads/5.0
Home: https://github.com/pharo-project/pharo-core
Commit: d30f556341244d36f56a49923fec9f9c01e5df52
https://github.com/pharo-project/pharo-core/commit/d30f556341244d36f56a4992…
Author: Jenkins Build Server <board(a)pharo-project.org>
Date: 2016-01-28 (Thu, 28 Jan 2016)
Changed paths:
R FFI-MacOS.package/MacOSShell.class/README.md
R FFI-MacOS.package/MacOSShell.class/class/utilities/escapeFileName_.st
R FFI-MacOS.package/MacOSShell.class/definition.st
R FFI-MacOS.package/MacOSShell.class/instance/basics/getenv_.st
R FFI-MacOS.package/MacOSShell.class/instance/basics/system_.st
R FFI-MacOS.package/MacPixPatPtr.class/README.md
R FFI-MacOS.package/MacPixPatPtr.class/class/field definition/fields.st
R FFI-MacOS.package/MacPixPatPtr.class/class/instance creation/newPixPat.st
R FFI-MacOS.package/MacPixPatPtr.class/definition.st
R FFI-MacOS.package/MacPixPatPtr.class/instance/accessing/makeRGBPattern_.st
R FFI-MacOS.package/MacPixPatPtr.class/instance/api calls/apiDisposePixPat_.st
R FFI-MacOS.package/MacPixPatPtr.class/instance/api calls/apiMakeRGBPat_with_.st
R FFI-MacOS.package/MacPixPatPtr.class/instance/initialize-release/dispose.st
R FFI-MacOS.package/MacPoint.class/README.md
R FFI-MacOS.package/MacPoint.class/class/api calls/apiLineTo_with_.st
R FFI-MacOS.package/MacPoint.class/class/api calls/apiMoveTo_with_.st
R FFI-MacOS.package/MacPoint.class/class/examples/lineTo_.st
R FFI-MacOS.package/MacPoint.class/class/examples/macDraw.st
R FFI-MacOS.package/MacPoint.class/class/examples/moveTo_.st
R FFI-MacOS.package/MacPoint.class/class/field definition/fields.st
R FFI-MacOS.package/MacPoint.class/definition.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/getMousePoint.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/h.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/h_.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/v.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/v_.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/x.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/x_.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/y.st
R FFI-MacOS.package/MacPoint.class/instance/accessing/y_.st
R FFI-MacOS.package/MacPoint.class/instance/api calls/apiGetMousePoint_.st
R FFI-MacOS.package/MacRGBColor.class/README.md
R FFI-MacOS.package/MacRGBColor.class/class/field definition/fields.st
R FFI-MacOS.package/MacRGBColor.class/class/instance creation/fromColor_.st
R FFI-MacOS.package/MacRGBColor.class/definition.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/blue.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/blue_.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/green.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/green_.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/red.st
R FFI-MacOS.package/MacRGBColor.class/instance/accessing/red_.st
R FFI-MacOS.package/MacRect.class/README.md
R FFI-MacOS.package/MacRect.class/class/api calls/apiFillCOval_with_.st
R FFI-MacOS.package/MacRect.class/class/api calls/apiFillCRect_with_.st
R FFI-MacOS.package/MacRect.class/class/api calls/apiFrameOval_.st
R FFI-MacOS.package/MacRect.class/class/api calls/apiFrameRect_.st
R FFI-MacOS.package/MacRect.class/class/examples/coloredEllipses.st
R FFI-MacOS.package/MacRect.class/class/examples/coloredRectangles.st
R FFI-MacOS.package/MacRect.class/class/examples/macDraw.st
R FFI-MacOS.package/MacRect.class/class/field definition/fields.st
R FFI-MacOS.package/MacRect.class/definition.st
R FFI-MacOS.package/MacRect.class/instance/accessing/bottom.st
R FFI-MacOS.package/MacRect.class/instance/accessing/bottom_.st
R FFI-MacOS.package/MacRect.class/instance/accessing/left.st
R FFI-MacOS.package/MacRect.class/instance/accessing/left_.st
R FFI-MacOS.package/MacRect.class/instance/accessing/right.st
R FFI-MacOS.package/MacRect.class/instance/accessing/right_.st
R FFI-MacOS.package/MacRect.class/instance/accessing/top.st
R FFI-MacOS.package/MacRect.class/instance/accessing/top_.st
R FFI-Unix.package/X11Display.class/README.md
R FFI-Unix.package/X11Display.class/class/examples/coloredEllipses.st
R FFI-Unix.package/X11Display.class/class/examples/coloredRectangles.st
R FFI-Unix.package/X11Display.class/class/examples/x11Draw.st
R FFI-Unix.package/X11Display.class/class/field definition/fields.st
R FFI-Unix.package/X11Display.class/class/instance creation/XOpenDisplay_.st
R FFI-Unix.package/X11Display.class/class/instance creation/new.st
R FFI-Unix.package/X11Display.class/class/instance creation/on_.st
R FFI-Unix.package/X11Display.class/definition.st
R FFI-Unix.package/X11Display.class/instance/accessing/displayString.st
R FFI-Unix.package/X11Display.class/instance/accessing/getInputFocus.st
R FFI-Unix.package/X11Display.class/instance/accessing/ourWindow.st
R FFI-Unix.package/X11Display.class/instance/accessing/queryPointer_.st
R FFI-Unix.package/X11Display.class/instance/accessing/warpPointerBy_.st
R FFI-Unix.package/X11Display.class/instance/accessing/warpPointerFrom_in_To_in_.st
R FFI-Unix.package/X11Display.class/instance/accessing/warpPointerTo_in_.st
R FFI-Unix.package/X11Display.class/instance/initialize-release/closeDisplay.st
R FFI-Unix.package/X11Display.class/instance/initialize-release/flush.st
R FFI-Unix.package/X11Display.class/instance/initialize-release/sync.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/None.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XCloseDisplay_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XDisplayString_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XFlush_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XGetInputFocus_with_with_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XQueryPointer_window_returnRoot_child_rootX_rootY_winX_winY_mask_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XSync_.st
R FFI-Unix.package/X11Display.class/instance/xlib calls/XWarpPointer_sourceWindow_destWindow_sourceX_sourceY_sourceWidth_sourceHeight_destX_destY_.st
R FFI-Unix.package/X11Drawable.class/README.md
R FFI-Unix.package/X11Drawable.class/class/field definition/fields.st
R FFI-Unix.package/X11Drawable.class/class/instance creation/display_.st
R FFI-Unix.package/X11Drawable.class/class/instance creation/none.st
R FFI-Unix.package/X11Drawable.class/definition.st
R FFI-Unix.package/X11Drawable.class/instance/accessing/display.st
R FFI-Unix.package/X11Drawable.class/instance/accessing/display_.st
R FFI-Unix.package/X11Drawable.class/instance/accessing/xid.st
R FFI-Unix.package/X11Drawable.class/instance/accessing/xid_.st
R FFI-Unix.package/X11Drawable.class/instance/printing/printOn_.st
R FFI-Unix.package/X11GC.class/README.md
R FFI-Unix.package/X11GC.class/class/field definition/fields.st
R FFI-Unix.package/X11GC.class/class/instance creation/on_.st
R FFI-Unix.package/X11GC.class/class/xlib calls/XCreateGC_with_with_with_.st
R FFI-Unix.package/X11GC.class/definition.st
R FFI-Unix.package/X11GC.class/instance/accessing/display.st
R FFI-Unix.package/X11GC.class/instance/accessing/drawable.st
R FFI-Unix.package/X11GC.class/instance/accessing/drawable_.st
R FFI-Unix.package/X11GC.class/instance/drawing/background_.st
R FFI-Unix.package/X11GC.class/instance/drawing/drawLineFrom_to_.st
R FFI-Unix.package/X11GC.class/instance/drawing/drawOval_.st
R FFI-Unix.package/X11GC.class/instance/drawing/drawRectangle_.st
R FFI-Unix.package/X11GC.class/instance/drawing/fillOval_.st
R FFI-Unix.package/X11GC.class/instance/drawing/fillRectangle_.st
R FFI-Unix.package/X11GC.class/instance/drawing/foreground_.st
R FFI-Unix.package/X11GC.class/instance/initialize-release/free.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XDrawArc_with_with_with_with_with_with_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XDrawLine_with_with_with_with_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XDrawRectangle_with_with_with_with_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XFillArc_with_with_with_with_with_with_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XFillRectangle_with_with_with_with_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XFreeGC_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XSetBackground_with_with_.st
R FFI-Unix.package/X11GC.class/instance/xlib calls/XSetForeground_with_with_.st
R FFI-Unix.package/X11Window.class/README.md
R FFI-Unix.package/X11Window.class/definition.st
R FFI-Win32.package/Win32Constants.class/README.md
R FFI-Win32.package/Win32Constants.class/class/pool initialization/initialize.st
R FFI-Win32.package/Win32Constants.class/class/pool initialization/initializeWindowConstants.st
R FFI-Win32.package/Win32Constants.class/definition.st
R FFI-Win32.package/Win32Error.class/README.md
R FFI-Win32.package/Win32Error.class/class/as yet unclassified/initialize.st
R FFI-Win32.package/Win32Error.class/class/as yet unclassified/lastError.st
R FFI-Win32.package/Win32Error.class/class/as yet unclassified/win32GetLastError.st
R FFI-Win32.package/Win32Error.class/definition.st
R FFI-Win32.package/Win32Error.class/instance/as yet unclassified/errorCode.st
R FFI-Win32.package/Win32Error.class/instance/as yet unclassified/errorMessage.st
R FFI-Win32.package/Win32Error.class/instance/as yet unclassified/errorName.st
R FFI-Win32.package/Win32Error.class/instance/as yet unclassified/initializeWithLastError.st
R FFI-Win32.package/Win32File.class/README.md
R FFI-Win32.package/Win32File.class/class/operations/setReadOnly_.st
R FFI-Win32.package/Win32File.class/class/operations/setReadWrite_.st
R FFI-Win32.package/Win32File.class/definition.st
R FFI-Win32.package/Win32File.class/instance/api calls/getFileAttributes_.st
R FFI-Win32.package/Win32File.class/instance/api calls/setFileAttributes_lpAttrs_.st
R FFI-Win32.package/Win32File.class/instance/operations/setReadOnly_.st
R FFI-Win32.package/Win32File.class/instance/operations/setReadWrite_.st
R FFI-Win32.package/Win32HBrush.class/README.md
R FFI-Win32.package/Win32HBrush.class/class/api calls/apiCreateHatchBrush_with_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/backwardDiagonalWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/crossWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/diagonalCrossWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/forwardDiagonalWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/horizontalWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/hatch brushes/verticalWithColor_.st
R FFI-Win32.package/Win32HBrush.class/class/instance creation/createHatchBrush_color_.st
R FFI-Win32.package/Win32HBrush.class/class/instance creation/createSolidBrush_.st
R FFI-Win32.package/Win32HBrush.class/definition.st
R FFI-Win32.package/Win32HDC.class/README.md
R FFI-Win32.package/Win32HDC.class/definition.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiDeleteDC_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiDrawFocusRect_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiDrawFrameControl_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiEllipse_with_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiExtFloodFill_with_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiFillRect_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiFrameRect_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiLineTo_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiMoveToEx_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiRectangle_with_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiRoundRect_with_with_with_with_with_with_.st
R FFI-Win32.package/Win32HDC.class/instance/api calls/apiSelectObject_with_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/drawFocusRectangle_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/drawFrameControl_type_style_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/ellipse_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/fillRectangle_color_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/floodFillAt_boundaryColor_fillColor_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/frameRectangle_brush_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/lineTo_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/moveTo_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/rectangle_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/roundRectangle_width_height_.st
R FFI-Win32.package/Win32HDC.class/instance/drawing/selectObject_.st
R FFI-Win32.package/Win32HDC.class/instance/initialize-release/delete.st
R FFI-Win32.package/Win32HGDIObj.class/README.md
R FFI-Win32.package/Win32HGDIObj.class/definition.st
R FFI-Win32.package/Win32HGDIObj.class/instance/api calls/apiDeleteObject_.st
R FFI-Win32.package/Win32HGDIObj.class/instance/initialize-release/delete.st
R FFI-Win32.package/Win32Handle.class/README.md
R FFI-Win32.package/Win32Handle.class/class/accessing/fields.st
R FFI-Win32.package/Win32Handle.class/definition.st
R FFI-Win32.package/Win32Point.class/README.md
R FFI-Win32.package/Win32Point.class/class/accessing/fields.st
R FFI-Win32.package/Win32Point.class/class/api calls/apiGetCursorPos_.st
R FFI-Win32.package/Win32Point.class/class/instance creation/getCursorPos.st
R FFI-Win32.package/Win32Point.class/definition.st
R FFI-Win32.package/Win32Point.class/instance/accessing/x.st
R FFI-Win32.package/Win32Point.class/instance/accessing/x_.st
R FFI-Win32.package/Win32Point.class/instance/accessing/y.st
R FFI-Win32.package/Win32Point.class/instance/accessing/y_.st
R FFI-Win32.package/Win32Point.class/instance/converting/asPoint.st
R FFI-Win32.package/Win32Rectangle.class/README.md
R FFI-Win32.package/Win32Rectangle.class/class/accessing/fields.st
R FFI-Win32.package/Win32Rectangle.class/class/instance creation/fromRectangle_.st
R FFI-Win32.package/Win32Rectangle.class/definition.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/bottom.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/bottom_.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/left.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/left_.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/left_top_right_bottom_.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/right.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/right_.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/top.st
R FFI-Win32.package/Win32Rectangle.class/instance/accessing/top_.st
R FFI-Win32.package/Win32Shell.class/README.md
R FFI-Win32.package/Win32Shell.class/definition.st
R FFI-Win32.package/Win32Shell.class/instance/api calls/shellExecute_lpOperation_lpFile_lpParameters_lpDirectory_nShowCmd_.st
R FFI-Win32.package/Win32Shell.class/instance/operations/shellExplore_.st
R FFI-Win32.package/Win32Shell.class/instance/operations/shellFind_.st
R FFI-Win32.package/Win32Shell.class/instance/operations/shellOpen_.st
R FFI-Win32.package/Win32Utils.class/README.md
R FFI-Win32.package/Win32Utils.class/class/accessing/getEnvironmentVariable_.st
R FFI-Win32.package/Win32Utils.class/class/accessing/getEnvironmentVariable_buffer_ifAbsent_.st
R FFI-Win32.package/Win32Utils.class/class/accessing/getEnvironmentVariable_ifAbsent_.st
R FFI-Win32.package/Win32Utils.class/class/accessing/getEnvironmentVariables.st
R FFI-Win32.package/Win32Utils.class/class/api calls/apiFreeEnvironmentStrings_.st
R FFI-Win32.package/Win32Utils.class/class/api calls/apiGetEnvironmentStrings.st
R FFI-Win32.package/Win32Utils.class/class/api calls/apiGetEnvironmentVariable_buffer_size_.st
R FFI-Win32.package/Win32Utils.class/class/api calls/apiSetCursorPosX_y_.st
R FFI-Win32.package/Win32Utils.class/class/examples/getCommonEnvironmentVariables.st
R FFI-Win32.package/Win32Utils.class/definition.st
R FFI-Win32.package/Win32Window.class/README.md
R FFI-Win32.package/Win32Window.class/class/accessing/getDesktopWindow.st
R FFI-Win32.package/Win32Window.class/class/accessing/getFocus.st
R FFI-Win32.package/Win32Window.class/class/examples/coloredEllipses.st
R FFI-Win32.package/Win32Window.class/class/examples/coloredRectangles.st
R FFI-Win32.package/Win32Window.class/class/examples/getMainWindowText_.st
R FFI-Win32.package/Win32Window.class/class/examples/setMainWindowText_.st
R FFI-Win32.package/Win32Window.class/class/examples/win32Draw.st
R FFI-Win32.package/Win32Window.class/class/private/getWindowLong_index_.st
R FFI-Win32.package/Win32Window.class/class/private/getWindowStyle.st
R FFI-Win32.package/Win32Window.class/class/private/setNonResizable.st
R FFI-Win32.package/Win32Window.class/class/private/setWindowLong_index_value_.st
R FFI-Win32.package/Win32Window.class/definition.st
R FFI-Win32.package/Win32Window.class/instance/accessing/getDC.st
R FFI-Win32.package/Win32Window.class/instance/accessing/getHDCDuring_.st
R FFI-Win32.package/Win32Window.class/instance/accessing/getParent.st
R FFI-Win32.package/Win32Window.class/instance/accessing/messageBox_.st
R FFI-Win32.package/Win32Window.class/instance/accessing/messageBox_title_.st
R FFI-Win32.package/Win32Window.class/instance/accessing/messageBox_title_flags_.st
R FFI-Win32.package/Win32Window.class/instance/accessing/releaseDC_.st
R FFI-Win32.package/Win32Window.class/instance/accessing/screenToClient_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiGetDC_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiGetParent_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiGetWindowText_buffer_maxCount_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiMessageBox_text_title_flags_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiReleaseDC_with_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiScreenToClient_with_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiSetWindowPosition_insertAfter_x_y_cx_cy_flags_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/apiSetWindowText_text_.st
R FFI-Win32.package/Win32Window.class/instance/api calls/getWindowText_.st
A HelpSystem-Core.package/HelpBrowser.class/instance/actions/selectTopicSatisfying_.st
A HelpSystem-Core.package/HelpTopic.class/instance/accessing/pathToTopicSatisfying_.st
A Kernel.package/DateAndTime.class/instance/converting/asFileNameCompatibleString.st
M Kernel.package/DateAndTime.class/instance/printing/printHMSOn_.st
A Kernel.package/DateAndTime.class/instance/printing/printHMSOn_separatedBy_.st
A Kernel.package/DateAndTime.class/instance/printing/printHMSWithDashesOn_.st
M Morphic-Widgets-Windows.package/SystemWindow.class/instance/activation/beTopWindow.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - scripts/script50550.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - scripts/script50551.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - updates/update50550.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - updates/update50551.st
M ScriptLoader50.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
Log Message:
-----------
50551
17468 HelpBrowser should offer an API for selecting topics
https://pharo.fogbugz.com/f/cases/17468
17465 Change TopWindow before passivating the old
https://pharo.fogbugz.com/f/cases/17465
17480 Add Timestamp in a filename
https://pharo.fogbugz.com/f/cases/17480
17483 unload FFI platform packages
https://pharo.fogbugz.com/f/cases/17483
http://files.pharo.org/image/50/50551.zip
Jan. 28, 2016
Re: [Pharo-dev] Disable assertions (design by contract)
by Marcus Denker
Hello,
Yes, we should experiment with that.
A compiler option is very easy to add⦠and easy to understand. And trivial to do.
1) step one:
add the following line at the start of OCASTTranslator>>emitMessageNode:
self compilationContext optionDisableAssert ifTrue: [
aMessageNode selector == #assert: ifTrue: [ ^methodBuilder pushReceiver ]
].
2) step 2. There is no step. 2 ;-). Maybe a better version would use plugin⦠changing the code generator like that
is a bit a hack. But it works.
You can now turn off all sends to #assert: by enabling the #optionDisableAssert compiler option.
e.g. class wide by setting on the class side in
compiler
^super compiler options: #(+ optionDisableAssert).
More magic is, of course, always possible later⦠I have some ideas.
Marcus
> On 28 Jan 2016, at 13:54, Aliaksei Syrel <alex.syrel(a)gmail.com> wrote:
>
> Hi
>
> Assertions play an important role in design by contract. It is great to have assertions in Pharo out of box (Object>>#assert:). However in projects with many post- and precondition as also class invariants heavy usage of assertions decreases performance...
>
> Would it be possible to have a compiler setting (in setting browser) to enable/disable assertions and not compile them to bytecode? Compiler should ignore the whole assertion statement with removed condition. For example:
> self assert: self hugeInvariant.
> with disabled assertion hugeInvariant must not be sent.
>
> Thanks,
> Alex
Jan. 28, 2016
Disable assertions (design by contract)
by Aliaksei Syrel
Hi
Assertions play an important role in design by contract. It is great to
have assertions in Pharo out of box (Object>>#assert:). However in projects
with many post- and precondition as also class invariants heavy usage of
assertions decreases performance...
Would it be possible to have a compiler setting (in setting browser) to
enable/disable assertions and not compile them to bytecode? Compiler should
ignore the whole assertion statement with removed condition. For example:
> self assert: self hugeInvariant.
with disabled assertion hugeInvariant must not be sent.
Thanks,
Alex
Jan. 28, 2016
Re: [Pharo-dev] LearningObject
by stepharo
Le 28/1/16 09:53, Denis Kudriashov a écrit :
>
> 2016-01-28 8:23 GMT+01:00 stepharo <stepharo(a)free.fr
> <mailto:stepharo@free.fr>>:
>
> I wanted to avoid to use the class Api becuase with ProtoObject
> you never know.
> I think that I found the problem.
> The compilation happens in another thread.
>
>
> It is strange. You create new compiler instance for each method. How
> they can influence each other?
No idea :)
May be this is a problem between the compiler and the source access.
Jan. 28, 2016
Re: [Pharo-dev] LearningObject
by stepharo
So I tried with this version and it worked well. So I will keep it.
Le 28/1/16 00:17, Clément Bera a écrit :
> self class compile: (Object >> aSelector) sourceCode classified: #foo
Jan. 28, 2016