On Mon, 18 Jan 2016 12:36:12 +1000 David Seikel <onef...@gmail.com> said:

> In response to my novel below ... I fixed it, turns out it was my own
> silly fault this time.  I wasn't processing the return values from the
> script function calls that cross the network properly.

aha! pebkac :)

but seriously - we dont want to break efl. we try not to. but we need people
to call us out on a break EARLY. preferably during development (follow git
master)  or at least when stefan puts out alphas and betas. i know if i notice
something break behavior-wise or stability wise AS we develop - i look into it.

so tell us what is wrong preferably as soon as possible after when it goes
wrong. :)

> On Wed, 13 Jan 2016 20:47:56 +1000 David Seikel <onef...@gmail.com>
> wrote:
> 
> > On Wed, 13 Jan 2016 10:28:25 +0100 Stefan Schmidt
> > <ste...@osg.samsung.com> wrote:
> > 
> > > Hello.
> > > 
> > > On 13/01/16 10:17, David Seikel wrote:
> > > > Wow, this is the first time in about a year that an EFL release
> > > > has NOT broken my highly experimental, based on beta API,
> > > > SledjHamr virtual world project.  Congratulations guys and gals.
> > > > B-)
> > > 
> > > That is good to hear!
> > > 
> > > >
> > > > On the other hand, I'm still trying to fix up all the breakage
> > > > from previous releases.  lol
> > > >
> > > This one not :(
> > > 
> > > Besides all these b0rkers jokes we are trying not to break things.
> > > From alpha1 onwards I really try to make sure we uncover the
> > > problems we might have to avoid regressions in the release. From my
> > > point of view it looks like the kind of regressions we have are
> > > mostly around behaviour changes. Actual API breaks seem to be under
> > > control.
> > > 
> > > Does this correlate with what you are seeing?
> > 
> > Keep in mind that my SledjHamr project is expected to take years to
> > complete, and has been under development (on and off, mostly off)
> > already for years.  It's due to this expectation that I'm using the
> > beta stuff in the first place.  I expect the beta APIs I've been using
> > will be well and truly stable before I can get a release out.
> > 
> > In the early days, yes API breaks where common.  These where easy to
> > fix though, look it up in the docs, or look at changes to examples,
> > just make the compiler happy.
> > 
> > These days it is more behaviour changes that's the problem.  These can
> > be tricky to sort out.  For example, one I "fixed" from the previous
> > release (or perhaps the one before that) is that the Elementary
> > toolbar on my main window would not display, even though the toolbars
> > on the child windows displayed fine.  Both use the same code.  So I
> > wrapped it in it's own child window for now, that's just big enough
> > to show the toolbar.  Just a work around for now.  While Elementary
> > might be stable, I'm using it via Eo, so the problem might be in Eo.
> > 
> > Another recent bug fix was that the 3D models where not turning up.  I
> > can't recall off the top of my head how I fixed that.  Evas_3D isn't
> > stable, so I expect problems every now and then.  Also in Evas_3D, I
> > was using the example cube and sphere code originally.  Some time last
> > year the ability to click on that cube or sphere stopped working,
> > around about the time primitives where added to Evas_3D.  I fixed this
> > by switching to primitives, and clicks work fine now.
> > 
> > There have been many other issues like those.
> > 
> > The one remaining problem, though it's entirely possible it's masking
> > more, is to do with very complex communication between the client,
> > world server, and script server.  I think, proving to be tricky to
> > track down.  Some of the stuff is working, but I should be getting a
> > dialogue popping up as the result of interacting with a script, and
> > that isn't working now.  I know the dialogue itself works, popping it
> > up other ways is fine.
> > 
> > 
> > 
> > The following novel describes how complex this is.  Skip it if you
> > like.  lol
> > 
> > I start the client, it tries to connect to a world server (local only
> > for testing), if it can't find one, it starts one, then tries again.
> > The world server does the same thing for the script server, try to
> > connect, on failure, start one.
> > 
> > Once it's all up and running, the world server tells the script server
> > to start compiling all the scripts it finds in the world.  These are
> > ordinary LSL scripts (Linden Scripting Language), as invented for
> > Second Life (SL) by Linden Labs.  Commonly used open source scripts
> > are what I'm testing with.  I'm trying to maintain backwards
> > compatibility with both that and the OpenSim (OS) variation of LSL.
> > It's common to have thousands of these scripts in one 256 x 256 meter
> > region, or even dozens on an avatar.
> > 
> > LSL is a .... insert REALLY STRONG SWEAR WORDS here ... of a language,
> > trying to do stuff often involves multiple scripts communicating with
> > each other.  The script server translates them into Lua, then uses
> > LuaJIT to compile them.  The script server tells the world server when
> > each script is done compiling, the world server then tells the script
> > server to actually run them.  Which it does, using LuaJIT.  I wrote a
> > worker thread system to run these scripts, as LSL is event driven.  So
> > script response to events is expected to be short.  This is actually
> > part of the spec of LSL.  Anyone trying an endless loop in LSL should
> > expect their script to be terminated.
> > 
> > As an aside, I'm doing things this way coz I feel that LuaJIT, being
> > the fastest scripting language, could do a far better job than normal
> > LSL, which is usually compiled to Mono.  If I remember correctly (been
> > a while since I did the last benchmarks), SL and OS both take many
> > seconds to compile an average script, my compiler is compiling
> > hundreds per second.  I haven't benchmarked running performance yet,
> > but I expect a decent speed up.  OS has a similar arrangement, but
> > translates to C# and compiles to Mono; no one knows what SL does,
> > other than use Mono.  SL used to compile the scripts client side,
> > using their own runtime, but they switched to compiling to Mono.
> > This is why these days you can select either option in SL.
> > 
> > So these normal, everyday, LSL scripts toss messages back and forth
> > between themselves, mostly due to memory limits and lack of a library
> > mechanism, and toss messages to the world server to get it to do stuff
> > to the world.  The world server tosses events to the script server,
> > which are passed onto the scripts.  Stuff that involves interacting
> > with the user gets messages tossed between all three.
> > 
> > The main scripts I'm testing with are called MLP, Multi Love Pose,
> > scripts used for sex.  I chose them coz they actually exercise a large
> > part of the system in a staged way (so I don't have to implement
> > everything at once), they are popular, and are known to be slow.
> > Plus, I'm familiar with them, having worked with them in the past.
> > When they start up, they mostly just sit idle until someone clicks on
> > the object they are in.  Then a half dozen scripts start loading data
> > into themselves from "notecards" also stored in the object, spewing
> > logging info to the chat console.  After a while, they are ready.  A
> > second click is supposed to pop up a dialogue where the user can then
> > decide what to do.  Usually the user will then select a pose from the
> > dialogue, and the scripts will create "pose balls" in world, which the
> > user/s then sit on.  Second Life and OpenSim users will be familiar
> > with how this works in world.
> > 
> > Right now, only some of those messages to the chat console actually
> > appear, and the dialogue no longer pops up.  It used to work as far as
> > interacting with the dialogue, and getting more dialogues.  The part
> > that creates objects in world in response to scripts hasn't been
> > written yet.  I don't even have avatars yet, so no one's sitting on
> > anything.
> > 
> 
> 
> -- 
> A big old stinking pile of genius that no one wants
> coz there are too many silver coated monkeys in the world.


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to