Re: [Pharo-users] Spec vs Brick vs Glamour vs Morphic vs WTF?

2016-07-07 Thread Ben Coman
On Thu, Jul 7, 2016 at 5:41 PM, stephan  wrote:
> Ben wrote:
>>
>> First time I've heard of it.  Could you describe it?
>
>
> Creating simple CRUD tables and forms with text fields and to-1 references
> to other
> tables. In Pharo 6 doesn't need the SelectEntity widget, as that is already
> loaded.
>
> http://forum.world.st/ANN-SpecGenerator-easy-CRUD-applications-with-Spec-td4889624.html


cool. thanks for the link.
cheers -ben



Re: [Pharo-users] SQLite + Pharo

2016-07-07 Thread Esteban A. Maringolo
2016-07-06 6:24 GMT-03:00 Hilaire :
> Thanks Esteban,
>
> I guess UDBC is for Pharo 5, and for Pharo 4 it is the NB version, right?

Right.

> I guess both version has the same public interface.

There might be a small difference in the API, because it seems more
people is using the UDBC version rather the previous one. But nothing
significant, because AFAIU the UDBC has more methods, but didn't
change the semantics.

Regards!

Esteban A. Maringolo



Re: [Pharo-users] Spec vs Brick vs Glamour vs Morphic vs WTF?

2016-07-07 Thread stephan

Ben wrote:

First time I've heard of it.  Could you describe it?


Creating simple CRUD tables and forms with text fields and to-1 
references to other
tables. In Pharo 6 doesn't need the SelectEntity widget, as that is 
already loaded.


http://forum.world.st/ANN-SpecGenerator-easy-CRUD-applications-with-Spec-td4889624.html

Stephan



Re: [Pharo-users] [UFFI] Using a nested structure

2016-07-07 Thread Merwan Ouddane
Now it is working, thank you :)

On Thu, Jul 7, 2016 at 8:42 AM, Esteban Lorenzano 
wrote:

> Hi,
>
> > On 07 Jul 2016, at 01:54, Ben Coman  wrote:
> >
> > On Thu, Jul 7, 2016 at 12:58 AM, Merwan Ouddane 
> wrote:
> >> PS: for the first example, the alignment is not respected, the vec3
> >> structure is starting at 9 but uffi is fetching it at 5
> >
> > Hi Esteban,
> >
> > Is it possible to get a feature or a recipe to output the sizeof or
> > offset of fields in types as understood by the Image, and the same
> > from a C side - that could be used as the standard first step in
> > troubleshooting these kinds of issues ?
>
> FFIExternalType class>>sizeOf: ?
>
> but that does not works for complex type sizes (like FFIExternalArray).
>
> I don’t know what the problem is here, because in my test (attached) it
> seems to be working fine.
> maybe problem is on how the Vec3 array is created, it should be something
> like this:
>
> Vec3 class>>iinitialize
> self
> type: (FFIExternalType resolveType: 'double')
> size: 3
>
> (is like that because FFITypeArray is more designed to be used creating
> anonymous types than concretes, but well… )
>
> in any case, it seems to be working for me.
>
> Now, about the use…
>
> doing this:
>
> p := Position new.
> p v1 at: 1 put: 42.0.
> p v1 at: 1. “will print 0.0"
>
> why? because it works making a copy (maybe it should work passing a
> segment, as nested structs work, but this is how it works now).
>
> What should work (at doesn’t) in this case is this:
>
> v := Vector3 new.
> p := Position new.
> v at: 1 put: 42.0.
> p v1: v.
> p v1 at: 1. “will print 42.0"
>
> it does not work because I made a mistake in field generation that I
> already fixed… so you will need to update UFFI (and regenerate field
> accessors) ;)
>
> also… I will provide a fix to make first case work… just later because now
> I’m going to my french lessons :)
>
> Esteban
>
> ps: for future reference, a description of: install this, run that, is a
> lot easier to understand the problem (is a case of “show me the code!”) :P
>
>
>
>
> >
> > cheers -ben
> >
> >>
> >>
> >> On 06/07/2016 17:55, Merwan Ouddane wrote:
> >>
> >> Another test:
> >> I replaced double by integer, for visibility...
> >> typedef struct vec3 {
> >> int data[3];
> >> } vec3;
> >>
> >> add a second vec3 to position:
> >>
> >> typedef struct position {
> >> int i;
> >> vec3 vec;
> >> vec3 vec2;
> >> } position;
> >>
> >> Now in pharo:
> >> Position >> fieldsDesc
> >> "self rebuildFieldAccessors"
> >>^ #(
> >>int i;
> >>Vec3 vec;
> >>Vec3 vec2;
> >> )
> >>
> >> The size returned for each stucture is 16 instead of 12 that because of
> the
> >> "8 byte alignment"
> >>
> >> Meaning that the "position" structure is corrupted.
> >>
> >> With this function:
> >>
> >>
> >> extern "C" void DLL_EXPORT fillStruct(position *position)
> >> {
> >>position -> i = 19;
> >>(position -> vec).data[0] = 1;
> >>(position -> vec).data[1] = 2;
> >>(position -> vec).data[2] = 3;
> >>(position -> vec2).data[0] = 1;
> >>(position -> vec2).data[1] = 2;
> >>(position -> vec2).data[2] = 3;
> >> }
> >>
> >> We will get:
> >> position i == 19
> >> position vec at: 1 == 1
> >> position vec2 at: 1 == 2
> >>
> >>
> >> On Tue, Jul 5, 2016 at 3:12 PM, Ronie Salgado 
> wrote:
> >>>
> >>> I compiled the DLL using Visual Studio 2015 Community Edition. Later I
> >>> will check with mingw.
> >>>
> >>> 2016-07-05 14:58 GMT+02:00 Merwan Ouddane :
> 
>  Using codeblocks, mine are:
> 
>  mingw32-g++.exe -m32 -DBUILD_DLL -c main.cpp -o obj\Release\main.o
>  mingw32-g++.exe -shared -Wl,--output-def=bin\Release\libTest.def
>  -Wl,--out-implib=bin\Release\libTest.a -Wl,--dll  obj\Release\main.o
> -o
>  bin\Release\Test.dll -s -m32
> 
> 
>  On Tue, Jul 5, 2016 at 2:52 PM, Merwan Ouddane <
> merwanoudd...@gmail.com>
>  wrote:
> >
> > I am not moving from another plateform :/
> >
> > I tried it in pharo 6 and I it didn't work either.
> >
> > It could be my dll. What is your compilation line for the dll ?
> >
> > Thanks you,
> > Merwan
> >
> > On Tue, Jul 5, 2016 at 2:14 PM, Ronie Salgado 
> > wrote:
> >>
> >> Hi Merwan,
> >>
> >> I tested this on Pharo 6 and it is working in Windows. However, in
> 32
> >> bits Window doubles have an 8 byte alignment, unlike Linux where
> they have a
> >> 4 byte alignment.
> >>
> >> Can you try doing the following before performing the ffi call in
> >> Windows, if you are moving an image from Linux or OS X:
> >>
> >> Vec3 rebuildFieldAccessors.
> >> Position rebuildFieldAccessors.
> >>
> >> Best regards,
> >> Ronie
> >>
> >> 2016-07-05 11:11 GMT+02:00 Merwan Ouddane  >:
> >>>
> >>> Hi,
> >>>
> >>> I have an issue whith nested structures.
> >>>
> >>> I made some "dummy" structures i