Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- August
- 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
- 3 participants
- 144616 messages
Re: [Pharo-dev] Regular expression to match URIs
by stepharo
thanks
We should add that as an example in the package :)
Stef
Le 29/7/16 à 16:13, Casimiro - GMAIL a écrit :
> If someone is in need to parse URIs, then the following regex handle it:
>
> | regStr regex |
>
> regStr :=
> '((([a-z]\w+\:)', "Match URL protocol and
> colon"
> '(/|//|///|[A-Za-z0-9%]))', "Match 1-3 slashes or
> single letter or digit or %"
> '|', "or"
> '(((www\d)|(www\d\d)|(www\d\d\d))[.])', "match www ou
> www[1-999] followed by ."
> '|', "or"
> '([A-Za-z0-9._\-]+[.]([a-z][a-z]|[a-z][a-z][a-z]|[a-z][a-z][a-z][a-z])/))',
> "domain name"
> '(([^\s()<>]+', "run of non-space, non ()<>"
> '|', "or"
> '\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+)', "balanced parens up to two
> levels"
> '(\(([^\s()<>]+|(\([^\s()<>]+\)))*\)', "end with balanced aprens up
> to 2 levels"
> '|', "or"
> '[^\s`!()[]{};:''".,<>?«»ââââ])'. "not a space or one of
> these punct chars"
>
> regex := RxMatcher forString: regStr.
>
> --
> The information contained in this message is confidential and intended
> to the recipients specified in the headers. If you received this
> message by error, notify the sender immediately. The unauthorized use,
> disclosure, copy or alteration of this message are strictly forbidden
> and subjected to civil and criminal sanctions.
>
> ==
>
> This email may be signed using PGP key *ID: 0x4134A417*
July 30, 2016
Re: [Pharo-dev] Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
by stepharo
I will review anything you write.
I should redo the tutorial to get better at parsing.
Stef
Le 29/7/16 à 23:22, Thierry Goubier a écrit :
>
>
> Le 29/07/2016 à 21:18, stepharo a écrit :
>> Thierry
>>
>> I started a Smacc chapter in the PharoInProgress book.
>
> Ok. I'll have a look if I can contribute during my holidays...
>
> Thierry
>
>
>>
>> Stef
>>
>>
>> Le 29/7/16 à 15:56, Thierry Goubier a écrit :
>>>
>>>
>>> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>>> <mailto:sven@stfx.eu>>:
>>>
>>>
>>> > On 29 Jul 2016, at 14:23, Thierry Goubier
>>> <thierry.goubier(a)gmail.com <mailto:thierry.goubier@gmail.com>>
>>> wrote:
>>> >
>>> > Hi Sven,
>>> >
>>> > I'd put RB + SmaCC among the lot. But I consider that really
>>> non-trivial : the pattern language of RB (and the underlying
>>> pattern matching and unification algorithm) is top notch, and how
>>> SmaCC builds on RB to virtually generate code / optimise code /
>>> then compile is nothing short of amazing.
>>> >
>>> > SmaCC comes with a pattern matching/unification algorithm over
>>> ASTs + auto-generation of AST code + visitor + tree equality + the
>>> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code.
>>>
>>> Well, you don't need to convince me that there is some really
>>> magic code out there, thanks for pointing this out. People should
>>> really do more effort to promote the stuff they like, by writing
>>> some nice accessible article about it. (Hint, hint).
>>>
>>>
>>> Understood :)
>>>
>>>
>>> The problem is that even though Smalltalk itself is simple, the
>>> whole environment, being super dynamic/flexible, is not. It scares
>>> a lot of people that they cannot really grab and hold the code. It
>>> is only once you get beyond that initial hurdle (which also
>>> requires you to unlearn/learn a new approach), that you can start
>>> to explore and appreciate all the good stuff. I am still not sure
>>> how we can make this clear to newcomers, but it feels like a
>>> critical step.
>>>
>>>
>>> Maybe there is a question of coding style coupled with the tools?
>>>
>>> Thierry
>>>
>>>
>>>
>>> > Thierry
>>> >
>>> > (*) And a true equivalent, with LR, LALR and GLR !
>>> >
>>> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>>> <mailto:sven@stfx.eu>>:
>>> > <Social Media Marketing>
>>> >
>>> > The following interesting question/thread could use some more
>>> comments/votes:
>>> >
>>> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
>>> >
>>> > > https://news.ycombinator.com/item?id=12185892
>>> <https://news.ycombinator.com/item?id=12185892>
>>> >
>>> > Sven
>>> >
>>>
>>>
>>>
>>
>
>
>
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Holger Freyther
> On 17 Mar 2016, at 22:16, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
Hi!
> I got this error maybe once or twice maybe a year ago on linux, but I had a lot of windows opened (like 20 or 30), and when I got back to big screen it was ok again.
I am now seeing this with a Pharo50 build on a Jenkins setup.
+ unzip pharo.zip
Archive: pharo.zip
inflating: Pharo-50761.image
inflating: Pharo-50761.changes
+ mv Pharo-50761.image App.image
+ mv Pharo-50761.changes App.changes
+ create_symlinks
+ export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
+ LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
+ ln -sf /usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 libcrypto.so
+ /build/build/vm/pharo --nodisplay App.image eval --save '(NonInteractiveTranscript onFileNamed: #stdout)' install
Transcript
+ /build/build/vm/pharo --nodisplay App.image clean --save
Segmentation fault Fri Jul 29 19:34:57 2016
/build/build/vm/pharo
pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
Revision:
https://github.com/pharo-project/pharo-vm.git
Commit: b8ec25a570d7539653e1d793e97609adb509aaed Date: 2016-05-04 11:14:22 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com> Jenkins build #589
Build host: Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
plugin path: /build/build/vm/ [default: /build/build/vm/]
C stack backtrace & registers:
eax 0xff969e64 ebx 0xff969d80 ecx 0xff969e18 edx 0xff969dcc
edi 0xff969c50 esi 0xff969c50 ebp 0xff969ce8 esp 0xff969d34
eip 0xff969f48
*[0xff969f48]
/build/build/vm/pharo[0x80c0912]
/build/build/vm/pharo[0x80c0c76]
linux-gate.so.1(__kernel_rt_sigreturn+0x0)[0xf770bd50]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Stream_ReadULong+0x6e)[0xf743342e]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x524b7)[0xf74764b7]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x23daa)[0xf7447daa]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x10ecb)[0xf7434ecb]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Open_Face+0x2d9)[0xf7437bd9]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_New_Memory_Face+0x5a)[0xf74381ea]
/build/build/vm/libFT2Plugin.so(primitiveNewMemoryFaceFromExternalMemoryAndIndex+0xfa)[0xf74da15a]
/build/build/vm/pharo[0x80906a0]
/build/build/vm/pharo(interpret+0x51c6)[0x80b5886]
/build/build/vm/pharo[0x80b5e09]
/build/build/vm/pharo(interpret+0x1f6)[0x80b08b6]
/build/build/vm/pharo(main+0x2b2)[0x805cb92]
/lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf3)[0xf7504a63]
/build/build/vm/pharo[0x805ceb1]
/build/build/vm/pharo[0x812c328]
Smalltalk stack dump:
0xff96f21c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index: 0xc6dc808: a(n) FreeTypeFace
0xff96f244 I FreeTypeFace>create 0xc6dc808: a(n) FreeTypeFace
0xff96f264 I FreeTypeFace>validate 0xc6dc808: a(n) FreeTypeFace
0xff96f284 I FreeTypeFont>face 0xa3ed1b0: a(n) FreeTypeFont
0xff96f2c0 I FreeTypeFontProvider>fontFor:familyName: 0xae5a1d0: a(n) FreeTypeFontProvider
0xff96f2ec M [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f310 M OrderedCollection>do: 0xaf65a20: a(n) OrderedCollection
0xff96f33c I [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f360 M Array(SequenceableCollection)>do: 0xa3ec340: a(n) Array
0xff96f388 I LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f3b0 I LogicalFontManager>bestFontFor: 0xaf65a10: a(n) LogicalFontManager
0xff96f3d4 I LogicalFont>findRealFont 0xaf659d8: a(n) LogicalFont
0xff96f3f4 I LogicalFont>realFont 0xaf659d8: a(n) LogicalFont
0xff96f414 I LogicalFont>height 0xaf659d8: a(n) LogicalFont
0xff96f434 I TextStyle>newFontArray: 0xa3ec2c8: a(n) TextStyle
0xff96f458 I TextStyle class>fontArray: 0xaccf538: a(n) TextStyle class
0xff96f474 M [] in LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
0xff96f48c M Dictionary(Collection)>detect:ifFound:ifNone: 0xa3ebce0: a(n) Dictionary
0xff96f4b0 M Dictionary(Collection)>detect:ifNone: 0xa3ebce0: a(n) Dictionary
0xff96f4d8 I LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
0xff96f4fc I TextMorphForFieldView(TextMorph)>font: 0xa3e6ee0: a(n) TextMorphForFieldView
0xff96f520 I PluggableTextFieldMorph>beDecrypted 0xc66bfb0: a(n) PluggableTextFieldMorph
0xff96f540 I PluggableTextFieldMorph>initialize 0xc66bfb0: a(n) PluggableTextFieldMorph
0xc6d95e8 s PluggableTextFieldMorph class(Behavior)>new
0xc6d96a8 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:font:help:entryCompletion:
0xc6d9868 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:help:entryCompletion:
0xc6d9a48 s RubFindReplaceDialogWindow(StandardWindow)>newAutoAcceptTextEntryFor:get:set:class:getEnabled:help:entryCompletion:
0xc6d9b08 s RubFindReplaceDialogWindow>newFindTextEntryMorph
0xc6d9b68 s RubFindReplaceDialogWindow>newContentMorph
0xc6d9bc8 s RubFindReplaceDialogWindow(DialogWindow)>newMainPanel
0xc6d9c28 s RubFindReplaceDialogWindow(DialogWindow)>addMainPanel
0xc6d9c88 s RubFindReplaceDialogWindow(DialogWindow)>addInitialPanel
0xc6d9ce8 s RubFindReplaceDialogWindow(DialogWindow)>initialize
0xc6d9d48 s RubFindReplaceDialogWindow class(Behavior)>new
0xc6d9da8 s RubFindReplaceService>newDialog
0xc6d9e08 s RubFindReplaceService>dialog
0xc6d9e68 s RubFindReplaceService>dialogIsActiveFor:
0xc6d9ec8 s RubEditingArea(RubAbstractTextArea)>hasFindReplaceFocus
0xc6d9f28 s RubTextScrollPane>drawSubmorphsOn:
0xc6d9f88 s [] in RubTextScrollPane(Morph)>fullDrawOn:
0xc6d9fe8 s FormCanvas>roundCornersOf:in:during:
0xc6da048 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6da0a8 s [] in RubTextScrollPane(Morph)>fullDrawOn:
0xc6da108 s BlockClosure>on:do:
0xc6da168 s RubTextScrollPane(Morph)>fullDrawOn:
0xc6da1c8 s FormCanvas(Canvas)>fullDraw:
0xc6da228 s FormCanvas(Canvas)>fullDrawMorph:
0xc6da288 s [] in RubScrolledTextMorph>drawSubmorphsOn:
0xc6da2e8 s Array(SequenceableCollection)>reverseDo:
0xc6da348 s [] in RubScrolledTextMorph>drawSubmorphsOn:
0xc6da3a8 s FormCanvas>clipBy:during:
0xc6da408 s RubScrolledTextMorph>drawSubmorphsOn:
0xc6da468 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da4c8 s FormCanvas>roundCornersOf:in:during:
0xc6da528 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6da588 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da5e8 s BlockClosure>on:do:
0xc6da648 s RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da6a8 s FormCanvas(Canvas)>fullDraw:
0xc6da708 s FormCanvas(Canvas)>fullDrawMorph:
0xc6da768 s [] in StandardWindow(Morph)>drawSubmorphsOn:
0xc6da7c8 s Array(SequenceableCollection)>reverseDo:
0xc6da828 s [] in StandardWindow(Morph)>drawSubmorphsOn:
0xc6da888 s FormCanvas>clipBy:during:
0xc6da8e8 s StandardWindow(Morph)>drawSubmorphsOn:
0xc6da948 s [] in StandardWindow(Morph)>fullDrawOn:
0xc6da9a8 s FormCanvas>roundCornersOf:in:during:
0xc6daa08 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6daa68 s [] in StandardWindow(Morph)>fullDrawOn:
0xc6daac8 s BlockClosure>on:do:
0xc6dab28 s StandardWindow(Morph)>fullDrawOn:
0xc6dab88 s FormCanvas(Canvas)>fullDraw:
0xc6dabe8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dac48 s [] in PanelMorph(Morph)>drawSubmorphsOn:
0xc6daca8 s Array(SequenceableCollection)>reverseDo:
0xc6dad08 s [] in PanelMorph(Morph)>drawSubmorphsOn:
0xc6dad68 s FormCanvas>clipBy:during:
0xc6dadc8 s PanelMorph(Morph)>drawSubmorphsOn:
0xc6dae28 s [] in PanelMorph(Morph)>fullDrawOn:
0xc6dae88 s FormCanvas>roundCornersOf:in:during:
0xc6daee8 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6daf48 s [] in PanelMorph(Morph)>fullDrawOn:
0xc6dafa8 s BlockClosure>on:do:
0xc6db008 s PanelMorph(Morph)>fullDrawOn:
0xc6db068 s FormCanvas(Canvas)>fullDraw:
0xc6db0c8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6db128 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db188 s Array(SequenceableCollection)>reverseDo:
0xc6db1e8 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db248 s TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db2a8 s [] in TabGroupMorph(Morph)>fullDrawOn:
0xc6db308 s FormCanvas>roundCornersOf:in:during:
0xc6db368 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6db3c8 s [] in TabGroupMorph(Morph)>fullDrawOn:
0xc6db428 s BlockClosure>on:do:
0xc6db488 s TabGroupMorph(Morph)>fullDrawOn:
0xc6db4e8 s TabGroupMorph>fullDrawOn:
0xc6db548 s FormCanvas(Canvas)>fullDraw:
0xc6db5a8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6db608 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db668 s Array(SequenceableCollection)>reverseDo:
0xc6db6c8 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db728 s GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db788 s [] in GroupWindowMorph(Morph)>fullDrawOn:
0xc6db7e8 s FormCanvas>roundCornersOf:in:during:
0xc6db848 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6db8a8 s [] in GroupWindowMorph(Morph)>fullDrawOn:
0xc6db908 s BlockClosure>on:do:
0xc6db968 s GroupWindowMorph(Morph)>fullDrawOn:
0xc6db9c8 s FormCanvas(Canvas)>fullDraw:
0xc6dba28 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dba88 s [] in SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbae8 s Array(SequenceableCollection)>reverseDo:
0xc6dbb48 s [] in SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbba8 s FormCanvas>clipBy:during:
0xc6dbc08 s SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbc68 s [] in SystemWindow(Morph)>fullDrawOn:
0xc6dbcc8 s FormCanvas>roundCornersOf:in:during:
0xc6dbd28 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6dbd88 s [] in SystemWindow(Morph)>fullDrawOn:
0xc6dbde8 s BlockClosure>on:do:
0xc6dbe48 s SystemWindow(Morph)>fullDrawOn:
0xc6dbea8 s FormCanvas(Canvas)>fullDraw:
0xc6dbf08 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dbf68 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc068 s Rectangle>allAreasOutsideList:startingAt:do:
0xc6dc0c8 s Rectangle>allAreasOutsideList:do:
0xc6dc128 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc228 s Array(SequenceableCollection)>do:
0xc6dc288 s WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc388 s [] in WorldState>displayWorld:submorphs:
0xc6dc3e8 s FormCanvas>roundCornersOf:in:during:
0xc6dc448 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6dc4a8 s WorldState>displayWorld:submorphs:
0xc6dc508 s WorldMorph>displayWorld
0xc6dc568 s [] in WorldState>displayWorldSafely:
0xc6dc5c8 s BlockClosure>on:do:
0xc6dc628 s BlockClosure>ifError:
0xc6dc688 s WorldState>displayWorldSafely:
0xc6dc6e8 s WorldState>doOneCycleNowFor:
0xc6dc748 s WorldState>doOneCycleFor:
0xc6dc7a8 s WorldMorph>doOneCycle
0xc35ca30 s [] in MorphicUIManager>spawnNewProcess
0xc167510 s [] in BlockClosure>newProcess
Most recent primitives
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
replaceFrom:to:with:startingAt:
at:
objectAt:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
basicSize
new:
basicSize
basicAt:
replaceFrom:to:with:startingAt:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
stringHash:initialHash:
basicNew
basicIdentityHash
grow
grow
atLeast:
at:put:
at:put:
stringHash:initialHash:
at:
species
value:
value:
shallowCopy
stringHash:initialHash:
at:
value:
shallowCopy
stringHash:initialHash:
add:
value:
value:
value:
value:
shallowCopy
stringHash:initialHash:
value:
value:
class
value:
class
value:
class
class
value:
shallowCopy
stringHash:initialHash:
stringHash:initialHash:
stringHash:initialHash:
stringHash:initialHash:
value:
stringHash:initialHash:
at:
at:put:
at:
stringHash:initialHash:
at:
at:
at:put:
at:put:
at:
stringHash:initialHash:
at:
stringHash:initialHash:
value
value
value
\\
\\
stringHash:initialHash:
=
stringHash:initialHash:
at:
value:
at:
at:
at:
at:
at:
basicNew
at:
basicNew
value:
value:
value
basicNew
value
primCurrentLibrary
stringHash:initialHash:
compare:with:collated:
value:
value:
at:
at:
value:value:
**StackOverflow**
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
class
raisedTo:
raisedTo:
bitAnd:
*
*
*
asFloat
sqrt
truncated
sqrt
sqrt
sqrt
sqrt
sqrt
bitShift:
**PrimitiveFailure**
bitShiftMagnitude:
timesTwoPower:
>=
at:
value:value:
first
first
+
+
+
truncated
sqrt
sqrt
sqrt
sqrt
sqrt
truncated
value:value:
truncated
truncated
value:value:
**PrimitiveFailure**
bitShiftMagnitude:
timesTwoPower:
value:value:
**PrimitiveFailure**
basicAt:
bitShiftMagnitude:
basicAt:
bitAnd:
bitShiftMagnitude:
basicAt:
+
bitOr:
digitCompare:
bitShiftMagnitude:
bitShiftMagnitude:
digitCompare:
<
perform:with:
digitMultiply:neg:
*
<
at:
value:value:
truncated
truncated
at:
value:value:
truncated
truncated
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
at:
at:
at:put:
at:put:
at:
value:value:
truncated
truncated
sort:to:
sort:to:
sort:to:
sort:to:
truncated
truncated
truncated
truncated
bitShiftMagnitude:
timesTwoPower:
basicNew
allInstancesOrNil
value:
value:
**StackOverflow**
size
primNewFaceFromExternalMemory:size:index:
stack page bytes 4096 available headroom 2788 minimum unused headroom 3020
(Segmentation fault)
July 30, 2016
Re: [Pharo-dev] Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
by Thierry Goubier
Le 29/07/2016 à 21:18, stepharo a écrit :
> Thierry
>
> I started a Smacc chapter in the PharoInProgress book.
Ok. I'll have a look if I can contribute during my holidays...
Thierry
>
> Stef
>
>
> Le 29/7/16 à 15:56, Thierry Goubier a écrit :
>>
>>
>> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>> <mailto:sven@stfx.eu>>:
>>
>>
>> > On 29 Jul 2016, at 14:23, Thierry Goubier
>> <thierry.goubier(a)gmail.com <mailto:thierry.goubier@gmail.com>> wrote:
>> >
>> > Hi Sven,
>> >
>> > I'd put RB + SmaCC among the lot. But I consider that really
>> non-trivial : the pattern language of RB (and the underlying
>> pattern matching and unification algorithm) is top notch, and how
>> SmaCC builds on RB to virtually generate code / optimise code /
>> then compile is nothing short of amazing.
>> >
>> > SmaCC comes with a pattern matching/unification algorithm over
>> ASTs + auto-generation of AST code + visitor + tree equality + the
>> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code.
>>
>> Well, you don't need to convince me that there is some really
>> magic code out there, thanks for pointing this out. People should
>> really do more effort to promote the stuff they like, by writing
>> some nice accessible article about it. (Hint, hint).
>>
>>
>> Understood :)
>>
>>
>> The problem is that even though Smalltalk itself is simple, the
>> whole environment, being super dynamic/flexible, is not. It scares
>> a lot of people that they cannot really grab and hold the code. It
>> is only once you get beyond that initial hurdle (which also
>> requires you to unlearn/learn a new approach), that you can start
>> to explore and appreciate all the good stuff. I am still not sure
>> how we can make this clear to newcomers, but it feels like a
>> critical step.
>>
>>
>> Maybe there is a question of coding style coupled with the tools?
>>
>> Thierry
>>
>>
>>
>> > Thierry
>> >
>> > (*) And a true equivalent, with LR, LALR and GLR !
>> >
>> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>> <mailto:sven@stfx.eu>>:
>> > <Social Media Marketing>
>> >
>> > The following interesting question/thread could use some more
>> comments/votes:
>> >
>> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
>> >
>> > > https://news.ycombinator.com/item?id=12185892
>> <https://news.ycombinator.com/item?id=12185892>
>> >
>> > Sven
>> >
>>
>>
>>
>
July 29, 2016
Re: [Pharo-dev] Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
by stepharo
Thierry
I started a Smacc chapter in the PharoInProgress book.
Stef
Le 29/7/16 à 15:56, Thierry Goubier a écrit :
>
>
> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
> <mailto:sven@stfx.eu>>:
>
>
> > On 29 Jul 2016, at 14:23, Thierry Goubier
> <thierry.goubier(a)gmail.com <mailto:thierry.goubier@gmail.com>> wrote:
> >
> > Hi Sven,
> >
> > I'd put RB + SmaCC among the lot. But I consider that really
> non-trivial : the pattern language of RB (and the underlying
> pattern matching and unification algorithm) is top notch, and how
> SmaCC builds on RB to virtually generate code / optimise code /
> then compile is nothing short of amazing.
> >
> > SmaCC comes with a pattern matching/unification algorithm over
> ASTs + auto-generation of AST code + visitor + tree equality + the
> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code.
>
> Well, you don't need to convince me that there is some really
> magic code out there, thanks for pointing this out. People should
> really do more effort to promote the stuff they like, by writing
> some nice accessible article about it. (Hint, hint).
>
>
> Understood :)
>
> The problem is that even though Smalltalk itself is simple, the
> whole environment, being super dynamic/flexible, is not. It scares
> a lot of people that they cannot really grab and hold the code. It
> is only once you get beyond that initial hurdle (which also
> requires you to unlearn/learn a new approach), that you can start
> to explore and appreciate all the good stuff. I am still not sure
> how we can make this clear to newcomers, but it feels like a
> critical step.
>
>
> Maybe there is a question of coding style coupled with the tools?
>
> Thierry
>
>
> > Thierry
> >
> > (*) And a true equivalent, with LR, LALR and GLR !
> >
> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
> <mailto:sven@stfx.eu>>:
> > <Social Media Marketing>
> >
> > The following interesting question/thread could use some more
> comments/votes:
> >
> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
> >
> > > https://news.ycombinator.com/item?id=12185892
> <https://news.ycombinator.com/item?id=12185892>
> >
> > Sven
> >
>
>
>
July 29, 2016
Re: [Pharo-dev] [Moose-dev] Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
by stepharo
Indeed.
> I was at that talk, and I am not convinced that we are at that level, we are certainly not better in my opinion. The advantage that they have is the domain-specific language on top of the parsing infrastructure which makes it easy and fast to write (at least) the demos he is showing. We donât have that and his talk showed me that it is an important thing that is missing.
>
> --
> Does this mail seem too brief? Sorry for that, I donât mean to be rude! Please see http://emailcharter.org .
>
> Johan Fabry - http://pleiad.cl/~jfabry
> PLEIAD and RyCh labs - Computer Science Department (DCC) - University of Chile
>
>> On Jul 29, 2016, at 08:38, Serge Stinckwich <serge.stinckwich(a)gmail.com> wrote:
>>
>> When I see all the buzz around languages workbenches like Rascal:
>> https://www.youtube.com/watch?v=Ffx7VtEOSx4
>>
>> with MOOSE+RB+SmaCC+Reflectivity+GTools we are close to these tools
>> (or even better).
>
>
July 29, 2016
Re: [Pharo-dev] Limbo/PharoInProgress repositories
by stepharo
Hi serge
these repos are mine and they have a really clear meaning:
- limbo are just stekches of topics
- PharoInProgress are actively written chapters
- for reviews are chapters that can be taken and put in a future book.
Do not worry I will not forget them.
And they are important to avoid to give the impression that all the
books are in
messy incomplete state.
You can add a readme if you want.
Stef
Le 29/7/16 à 14:55, Serge Stinckwich a écrit :
> Dear all,
>
> on SquareBracketAssociates github org, I see a Limbo repo :
> https://github.com/SquareBracketAssociates/PharoLimbo
> and a PharoInProgress repo:
> https://github.com/SquareBracketAssociates/PharoInProgress
> Basically there are collections of chapters that are not part of any
> books until now.
> And there is also a repo called: PharoReadyForReviews
> https://github.com/SquareBracketAssociates/PharoReadyForReviews
> for chapters ready for reviews but with some chapters more than 2 years old.
>
> Does it make sense to merge all these repos in one ? Having too much
> repos, we forget about the others ...
>
> BTW, I add a draft of a chapter regarding Continuations (in French) I wrote
> several years ago :
> https://github.com/SquareBracketAssociates/PharoLimbo/blob/master/Continuat…
>
> Regards,
July 29, 2016
Re: [Pharo-dev] Option for as-in-moose debugger layout
by milton mamani
I agree with Yuriy stack should be in the side
For me, the best way could be that you can put the widgets in the position
that you want,
I mean, the default layout is the vertical(stack, code, attributes)
But then with the mouse click, move it to another place in the window, or
put it in a new window.
And have the option to save the new position by default.
But this idea, can be difficult to implement
2016-07-29 12:21 GMT-04:00 Yuriy Tymchuk <yuriy.tymchuk(a)me.com>:
>
> > On 29 Jul 2016, at 14:41, Peter Uhnak <i.uhnak(a)gmail.com> wrote:
> >
> > On Fri, Jul 29, 2016 at 01:28:57PM +0200, Cyril Ferlicot D. wrote:
> >> Le 27/07/2016 à 15:04, Denis Kudriashov a écrit :
> >>> I want it too (but I never try it).
> >>>
> >>> And maybe it is good time to force people taste it as default? (with
> >>> setting to return classic one)
> >>>
> >>
> >> Hi,
> >>
> >> At the integration it was the default but it was changed since more
> >> people found the old way more convenient.
> >
> > Also nobody likes change, so naturally everyone complains.
> >
>
> And itâs ok that people have different opinions. I was just asking whether
> it will be hard to have the layout changeable with a setting
>
July 29, 2016
Re: [Pharo-dev] segfault fresh Pharo5.0 download w/pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
by Dale Henrichs
Yesterday I reported that I was using the following script combination:
./pharo Pharo.image save xxx; ./pharo xxx.image --quit --save ./boom.st
and that the MNU was being hit during the second case when I was loading
boom.st and the same thing is true today, but instead of an MNU I'm
getting a segFault and the execution of boom.st is not even getting a
chance to start as here is stdout:
foos:test> ./pharo xxx.image --quit --save ./boom.st
Segmentation fault Fri Jul 29 11:12:12 2016
/export/foos1/users/dhenrich/dev/_home/dev/clients/test/pharo-vm/pharo
pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3
[Production Spur ITHB VM]
Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid:
d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid:
d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
And as happened yesterday saving the Pharo.image after bringing it up
interactively "fixes the problem"... and skipping the `./pharo
Pharo.image save xxx` avoids the problem as well ..
Dale
On 07/29/2016 11:04 AM, Dale Henrichs wrote:
> Attached crash.dmp file ... running Ubuntu14.04 and here's a bit of
> Smalltalk stack:
>
> 0xffb7d03c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index:
> 0xbc98a58: a(n) FreeTypeFace
> 0xffb7d064 I FreeTypeFace>create 0xbc98a58: a(n) FreeTypeFace
> 0xffb7d084 I FreeTypeFace>validate 0xbc98a58: a(n) FreeTypeFace
> 0xffb7d0a4 I FreeTypeFont>face 0xb86ade0: a(n) FreeTypeFont
> 0xffb7d0fc I
> FreeTypeSubPixelAntiAliasedGlyphRenderer>renderStretchedGlyph:depth:subpixelPosition:font:
> 0x9e2b218: a(n) FreeTypeSubPixelAntiAliasedGlyphRenderer
> 0xffb7d130 I
> FreeTypeSubPixelAntiAliasedGlyphRenderer>subGlyphOf:colorValue:mono:subpixelPosition:font:
> 0x9e2b218: a(n) FreeTypeSubPixelAntiAliasedGlyphRenderer
> ....snip....
> 0xbceb0b8 s WorldMorph>displayWorld
> 0xbceb118 s [] in WorldState>displayWorldSafely:
> 0xbceb178 s BlockClosure>on:do:
> 0xbceb1d8 s BlockClosure>ifError:
> 0xbceb238 s WorldState>displayWorldSafely:
> 0xbceb298 s WorldState>doOneCycleNowFor:
> 0xbceb2f8 s WorldState>doOneCycleFor:
> 0xbceb358 s WorldMorph>doOneCycle
> 0xb95ca30 s [] in MorphicUIManager>spawnNewProcess
> 0xb767510 s [] in BlockClosure>newProcess
>
>
> vm/image combo dowloaded yesterday launches without errors, so I don't
> think it's my environment that is the source of the segfault ...
>
> I was doing a fresh build from a bash script and from the looks of the
> last couple of lines it looks like that there are new changes in this
> image from yesterday:
>
> "Postscript:
> Leave the line above, and replace the rest of this comment by a useful
> one.
> Executable statements should follow this comment, and should
> be separated by periods, with no exclamation points (!!).
> Be sure to put any further comments in double-quotes, like this one."
>
> |repository|
> repository := MCHttpRepository
> location: 'http://smalltalkhub.com/mc/Pharo/Pharo50/main'
> user: ''
> password: ''.
> (repository
> loadVersionFromFileNamed:'ScriptLoader50-EstebanLorenzano.975.mcz') load.
> ScriptLoader new update50761.
> !
>
> ----End fileIn----!
>
> ----QUIT----2016-07-29T12:18:23.980837+02:00 Pharo.image priorSource:
> 215270!
>
> ----QUIT----2016-07-29T12:18:29.473484+02:00 Pharo.image priorSource:
> 234661!
>
> If you look at the bottom of the stack you will notice that
> WorldState>doOneCycle is being called and that's suspiciously similar
> to the issue I reported yesterday[1] ... but a segfault this time
> instead of an MNU..
>
> I will go through the drill of trying to see which part of the script
> is hitting this problem and provide more info ...
>
> It would be nice to get a clean build sooner rather than later :)
>
> Dale
>
> [1] https://pharo.fogbugz.com/f/cases/18706#BugEvent.170987
July 29, 2016
segfault fresh Pharo5.0 download w/pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
by Dale Henrichs
Attached crash.dmp file ... running Ubuntu14.04 and here's a bit of
Smalltalk stack:
0xffb7d03c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index:
0xbc98a58: a(n) FreeTypeFace
0xffb7d064 I FreeTypeFace>create 0xbc98a58: a(n) FreeTypeFace
0xffb7d084 I FreeTypeFace>validate 0xbc98a58: a(n) FreeTypeFace
0xffb7d0a4 I FreeTypeFont>face 0xb86ade0: a(n) FreeTypeFont
0xffb7d0fc I
FreeTypeSubPixelAntiAliasedGlyphRenderer>renderStretchedGlyph:depth:subpixelPosition:font:
0x9e2b218: a(n) FreeTypeSubPixelAntiAliasedGlyphRenderer
0xffb7d130 I
FreeTypeSubPixelAntiAliasedGlyphRenderer>subGlyphOf:colorValue:mono:subpixelPosition:font:
0x9e2b218: a(n) FreeTypeSubPixelAntiAliasedGlyphRenderer
....snip....
0xbceb0b8 s WorldMorph>displayWorld
0xbceb118 s [] in WorldState>displayWorldSafely:
0xbceb178 s BlockClosure>on:do:
0xbceb1d8 s BlockClosure>ifError:
0xbceb238 s WorldState>displayWorldSafely:
0xbceb298 s WorldState>doOneCycleNowFor:
0xbceb2f8 s WorldState>doOneCycleFor:
0xbceb358 s WorldMorph>doOneCycle
0xb95ca30 s [] in MorphicUIManager>spawnNewProcess
0xb767510 s [] in BlockClosure>newProcess
vm/image combo dowloaded yesterday launches without errors, so I don't
think it's my environment that is the source of the segfault ...
I was doing a fresh build from a bash script and from the looks of the
last couple of lines it looks like that there are new changes in this
image from yesterday:
"Postscript:
Leave the line above, and replace the rest of this comment by a useful one.
Executable statements should follow this comment, and should
be separated by periods, with no exclamation points (!!).
Be sure to put any further comments in double-quotes, like this one."
|repository|
repository := MCHttpRepository
location: 'http://smalltalkhub.com/mc/Pharo/Pharo50/main'
user: ''
password: ''.
(repository
loadVersionFromFileNamed:'ScriptLoader50-EstebanLorenzano.975.mcz') load.
ScriptLoader new update50761.
!
----End fileIn----!
----QUIT----2016-07-29T12:18:23.980837+02:00 Pharo.image priorSource:
215270!
----QUIT----2016-07-29T12:18:29.473484+02:00 Pharo.image priorSource:
234661!
If you look at the bottom of the stack you will notice that
WorldState>doOneCycle is being called and that's suspiciously similar to
the issue I reported yesterday[1] ... but a segfault this time instead
of an MNU..
I will go through the drill of trying to see which part of the script is
hitting this problem and provide more info ...
It would be nice to get a clean build sooner rather than later :)
Dale
[1] https://pharo.fogbugz.com/f/cases/18706#BugEvent.170987
July 29, 2016