Ever since objects were introduced in version 1.3.x they have been gaining more and more attention. They became a huge part of ZPE as the move towards making ZPE an object-oriented language became more and more clear with the need to be able to develop and teach simple object-oriented methodologies became more important.
ZPE 1.6.4 (August 2018) made a huge change that aligned structures and objects in a better way than before.
Now, with version 1.7.4, objects gain even more power. Previous versions of ZPE from 1.6.4 focused on using new object creation functions such as the
file_open_sequentially functions, but now ZPE in-lines the creation of objects such that it becomes possible to use internally created ZPE structures in the same way that user-defined structures are used. By this I mean using the new keyword:
function main() $v = new ZPEImage() $v->display() end function
This is positively one of the most important syntax changes that have been made for a while. As a result of it, certain functions such as the above-mentioned ones have now been removed.
ZPE 1.7.4 will be out in the next few days, bringing this new feature amongst many other fantastic features that will make this another one of those amazing releases. Other features coming include a much better GUI and ZPE Online features, lazy/short-circuit evaluation, the removal of an old version 1.3.x hack that affected performance, better-designed structure and object generation, and a few new functions.
For the first time in however many years, I have been spending a lot of time on working on making ZPE talk to my website and web server. As a result, I have been working on making a shared community that will allow users to save their work to the cloud.
The cloud will be powered by my own website engine that allows the posting and getting of user contributed content. This will not only be very good for clients who would like to access scripts elsewhere, but it will also allow sharing of code.
This is no where near finished, but it's got some traction already. You can find out more here.
My 19th birthday present, a Fujitsu T4410 tablet PC, specifically bought for taking to university with me, has lay in the same place for months now, awaiting a new SSD after the scandal of OCZ drives failing (no wonder they disappeared).
But something that I cheaped out on when buying the tablet PC (it was already £1000) was both the CPU and the fact it didn't have 3G. I had hoped to upgrade my tablet to include a 3G card and bought over £250 worth of cards in the hope that one of them would work, including a Sierra Gobi 2000 that actually came from a Fujitsu Lifebook. Alas, none of them worked and I figured out that it was more than likely because the BIOS was locked to prevent it being added afterwards. I knew that there was really only one way to fix this, buy a new computer. I wasn't doing this in a hurry.
However, at the start of the year I was looking for a new battery for my tablet since the one I have now only holds about half of it's full charge, and whilst I was at it, saw a motherboard, which conveniently featured a better CPU and 3G/UMTS card support. It was also only £26. I decided to give it a go.
Finally, after about 5 hours of ripping out the insides of my 2010 Lifebook, I have managed to breathe new life into it. My once T6570 powered tablet PC now features a P8700 (lower TDP, better performance, longer battery life) and a new 3G card! Although this was more of an experiment, it was also to help bring back power to a laptop I love owning, even if just for fun or my own reasons. It has been a fun experiment that worked really well.
Since it's getting close, I thought I'd post about what I think might happen if this final, epic season of the amazing TV series that is Game of Thrones.
First of all, let's talk about the wonderful Jaime Lannister, who has, in my personal opinion, gone from being an overly rude, full of himself, posh no-one-can-touch-me knight to one of the bravest, most sensible, and extremely caring individuals in the series. His transformation which took place across each of the previous seasons has turned him into one of the favourites for a lot of people, but that also then puts him in the firing line for HBO since they tend to just kill characters you love at the drop of a hat.
But here is what I think will happen to Jaime, and we can laugh at my thoughts after the new series is out and I am wrong. I think Jaime will redeem his title of Kingslayer and will be the one to kill the Night King. Except it will not be clean. Jaime will in fact sacrifice himself to achieve this. This would make sense because Jaime is already rebelling against Cersei's plans and plans to travel north to aid Jon Snow and Danny against the Night King.
Another loss that I would expect issince I am half expecting Jon to rule at the end of this. I'm personally more in favour of a kind of world where Jon rules the North and Dany rules in the south but I can't see that happening anymore. I actually think that something will happen to Dany and she won't survive this.
I also have this other theory and I think this theory is pretty damn cool (I've also not found anyone else going on about it, so I think the chances of it happening are quite slim). Here goes. The Mad King was going mad and asking his pyromancers to "burn them all" simply because the Night King got in his head. He was not meaning burn the people of the city, he was meaning the white walkers - he thought that they had made it into the city and that he was surrounded because somehow he was having visions of the Night King in King's Landing.
Finally, there is another theory I have that I think works. Ser Davos will, with his amazing skills in parlay, convince the Night King to surrender. He will literally tell him, he is not a learned man but he believes this war is pointless.
Some of my points can also be reinforced by this article.
First of all, my previous post is not void. I'm still considering ditching Dash. But as a result of talking to a friend and a few members of my family who remember my joy in developing Dash, I am proud to say that I've reconsidered what was said in the post. It's with great joy that I am now able to say that rather than ditching Dash I'm going to consider redesigning Dash and releasing Dash 2.
Dash 2 will borrow tons of code from Dash and will be a total rewrite of the whole thing. Parts will remain almost identical but the majority of the system will be rewritten in an encapsulated, object-oriented manner. Further, it will be backward compatible with the original Dash system (Dash 1?) and the Dashboard will remain the exact same. In the meantime, I've removed download links to Dash.
I'm hoping to start it mid next week and have it finished by the summer.
Dash as it is has become hard to manage. As a result I've now decided that I'm no longer going to develop Dash. This will come as a shock to some of people who have downloaded collectively over 22,000 installers for Dash. I'm also almost in tears with sadness about this at the moment.
Dash as it is works really well for me and I like it as it is. The update that brought Girder to it this year made development easier but overall, I'm extremely unhappy with the fact it's not fully utilising encapsulation amongst several other issues.
This has the same feeling as the moment when I decided to stop working on Painter Pro and Cobweb four years ago since as much as I kept telling myself I'd give it a go again, I knew it wouldn't happen. I hope that doesn't happen here.
I have plans to rewrite it from scratch, drawing the key features like the Dash Dashboard back into the new version, but the rewrite will likely take me months to do again.
ZPE 1.7.3 which is another major update to ZPE, is available from today. Major changes include the way that arrays work in ZPE, along with ordered associative arrays. Binary, octal and hexadecimal values have changed (see the changelog to find out more), structures are now less like standard objects where values can be set on them (see the previous post) and there's now several new documentation styles (
Also the update changes the parse_json, parse_csv and parse_xml functions to json_decode, csv_decode and xml_decode and there is now a new csv_encode function.
Overall, the tweaks made should make development even simpler than before.
ZPE 1.7.3 now brings a big change to the way in which structures work in ZPE. Originally, objects were extensions to the design of structures but as time went on it actually became structures that were extensions to objects.
Now, the object has become such a major part of YASS that the language itself has become largely object oriented. As direct result, structures have formed a major part of the design with much of the language being developed to take advantage of them. Now, with ZPE 1.7.3, structures differ from objects for the first time.
structure tester $name = "" $dob = "1970-01-01" end structure $person = new tester() print($person->$name) $person->$test = 10
class keyword that can be used instead of structure.
There have also been significant changes to the standard library that is now available on ZULE too. This update to the library makes it no longer backward compatible with ZPE version 1.6.x and before but it makes it better for the newer versions.
I remember all the hype when Intel announced it's Itanium processor. I was about 10 years old when I heard that the world was now moving from what seemed like the pretty new 32-bit architecture to a new 64-bit future. I remember reading about it in some magazine I used to read when I was young and finding all the details. It seemed like Itanium was it! Intel's Itanium which had been announced to be coming from the work of both HP and Intel for use in the server market seemed to be that future the computing industry needed. Except it wasn't.
But latterly, and even when I really got into computing science when I was about 13 years old, Itanium has struggled. Intel's main competition, AMD, released the AMD-64 instruction set that we all use today all the way back in 2000. It took Intel a few years to agree to follow the same instruction set since it was backward compatible. There was no doubt this was the heyday for AMD - a time when Intel was trying to copy everything AMD did.
Intel has focused on the Xeon range for their enterprise market and Itanium has suffered as a result.
But now Intel has announced the end of the line for Itanium, and rightly so. It was something that should have gone a long time ago. On the 30th January of this year, Intel officially decided to pull the plug (or at least begin to pull the plug). There is more here.
This blog post was inspired by a blog post by another teacher I know.
I'm getting to the end of my training now and nearly about to get out into the real world again (boy have I missed it). In less than 2 and a half months I will be finished with my teacher training and hopefully having passed, getting ready for my NQT year.
I'm enjoying it all again, maybe because I'm better at it where I am now, or maybe it's just the incredible amount of support I've been getting the last few days (my previous mentor is the one to thank for hardening me up and helping me get here). I'm more confident that I can teach as well and my last crit shows that since I had it last Tuesday and I think it was a really great lesson. Since then my lessons have been going well and I'm being reflective where I can to ensure that I improve where I need to.
Energy-wise I'm okay during the day but not finding the time at home to get the work I want to get done actually done. Though I am feeling it better here since most nights I don't feel I need to do any more work as I've done it all during the day.
I will report back to my followers in a few week's time!