Hi Redliners,
I continue to work on Redline and I'm very pleased with the progress of the Compiler. I have started to implement the Kernel Classes as part of the Runtime. If you would like to help then please let me know as it would help get Redline to a release version. - James. |
I'm very interested in seeing this released.
-- I'm primarily interested in having the Smalltalk language on the JVM for the apps I'm already working on. Having the historical classes would be of secondary value for me at this time, important for ports and future work. I tried building Redline from sources, and the master branch throws an exception on macOS Sierra 10.12.3, on visitExpression. The before-squeaking branch builds without an exception. But the debugging output definitely needs to be squelched. Like others mentioned on another thread, the IDEA plugin fails to load Redline's SDK into the environment for recent IDEA releases. I was able to eliminate most of the compilation by tracking down the changes to the IDEA Plugin API, but I doubt all the needed plugin lifecycle methods are now in place. I'll know once I've gotten all the remaining errors replaced and perhaps some deprecations resolved. The largest hurdle I see remaining is getting SmalltalkParser.java to compile. I believe it's generated by some tool in the Plugin SDK, but how to get it to generate one using the current Plugin API is currently beyond me. I was able to get the Eclipse plugin to build using the Kepler release. I have updated my fork and submitted a pull request for those changes. However, I've not been able to get it to build using Neon. Some additional changes to the Xtext API, build environment, yadda yadda, will be needed. Maybe sometime soon. I'd like to help bring things up to date with the latest JVM environments, but I don't know how much our objectives are linked after that point. I'm looking for a Smalltalk compiler to emit regular bytecodes for the regular and Android JVMs, as a replacement for Java and other programming languages. I'm not looking to recreate the Smalltalk environment on JVM just yet, as that route has already failed for practically every other Smalltalk implementation. I think a Smalltalk compiler to be used in place of Java, Groovy, JRuby, Scala and the rest would be a far more attractive proposition to most programmers. Anyhow, my help is offered, and everyone else's help is appreciated in getting this moved forward. Warmest regards, Alfonso Guerra Founder/CEO Apokalypse Software Corp. (626) 667-4285 On Sun, Jan 29, 2017 at 7:29 PM, James Ladd <[hidden email]> wrote: Hi Redliners, You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Hi Alfonso, Thank you for reaching out. I'm stalled on Redline for a while because I was in a startup. I have not got back to RL since there seemed to be very little interest. I did a branch of Redline that was a new improved and more complete version yet it still needs work. I'd love to do more with this but until I have some bills paid etc I have to look at to other things. - James. On Mon, Sep 11, 2017 at 12:11 PM, Apokalypse Software Corp <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
I relate completely to your need to pay bills and other human necessities, and disappointment with the apathy to the reception RLS has had in the development community. My own work on a Smalltalk-based system for tree Mac has been stalled over a decade now as well. But you've certainly built up greater interest and engagement for RLS. Well done! But if I may, I think attempting to recreate the Blue Book implementation in the JVM with full integration is quite an undertaking, and those who expressed an interest at the beginning have their enthusiasm tempered as the realities of the daily grind working with subpar languages have taken their toll. I believe iterative releases, with simpler objectives, would increase interest. A release which simply allows writing for the JVM directly would give developers interested in something new an opportunity to try out Smalltalk's syntax in a practical way. It would also allow those of us who prefer its cleaner syntax a way to use it in the projects and environments we currently contend with. As this initial implementation gives us time to build a larger community, we can continue recreating the Blue Book system for JVM (activated simply by importing the Smalltalk classes), add support for the Monticello repository, and other work. I know interest in Smalltalk continues to grow (simply because the number of developers is growing, and many hear about Smalltalk for some reason), but the lack of an implementation that fits into their current workflow and build system hampers usage and adoption. I would prefer using Smalltalk to write desktop and mobile apps and know others would too. This is my recommended course of action and what I'm currently working towards. Warmest regards, Alfonso Guerra Founder/CEO Apokalypse Software Corp @Huperniketes <a href="tel:(626)%20667-4285" value="+16266674285" target="_blank">(626) 667-4285 On Sep 11, 2017 2:54 AM, "James Ladd" <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Hi Alfonso. Writing a proper smalltalk is quite the undertaking and I am / was making great progress. I did have some initial people interested in helping and they did but quickly dropped off. I agree with your comments about a simpler and smaller releases and I have been thinking about this a lot. However, if just the compiler/interpreter was released people would probably not do much with it because there isn't a library to help - catch 22. I'm still keen to finish Redline and I have been thinking of ways to achieve this along the same lines as you. Hopefully soon Ill get some space to give this a try and put something out there. - James. On Tue, Sep 19, 2017 at 5:06 AM, Apokalypse Software Corp <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
On Sep 18, 2017 6:02 PM, "James Ladd" <[hidden email]> wrote:
Yes, your work on the full Blue Book implementation certainly is desirable andI look forward to using it and hopefully contributing to it as well. I'm sure once the community grows further, others who feel it lacks the particular Smalltalk feature they MUST have will also contribute.
I disagree. I would be happy to use the Smalltalk language linked to the Java JDK and Android SDK, and I believe others would too. That should bring enough interested developers who'll help contribute more code for proper Blue Book support, etc. I believe it's the Smalltalk aficionados insistence on having that complete Blue Book environment, with its incompatibility with the rest of the programming environments which have hindered its adoption while inferior languages like Perl, PHP, Ruby, Java, etc have far larger communities.
I'd be happy to brainstorm this further with you, off-list if you prefer. Warmest regards, Alfonso Guerra Founder/CEO Apokalypse Software Corp @Huperniketes (626) 667-4285
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by James Ladd
Hi Guys,
-- It is good to see interest in Redline. I have been watching it for a while, unfortunately I have not been able to contribute as I have the same problem, i.e., needing to work on what pays the bills. RE: writing a proper Smalltalk How far does integrating the Squeak sources take it? If it gets us to a reasonable base system, then bringing back the JavaAdaptor that was in one of the early versions of Redline could make a usable system; at least it would for my purposes ;-) I agree with Alfonso in that the initial trick is getting something reasonably stable that allows applications to be developed, even if it is mostly through Java integration. Then hopefully people would get interested and help bring Smalltalk libraries across as required in their own development. At one point I started looking into bringing the JavaAdaptor from the original version of Redline into the previous rebuild and I noticed it was pretty incomplete. I wonder if the JNIPort stuff could help get something off the ground quicker? If I recall correctly, it seemed that there were quite a few similarities between the two. It could also just be misleading superficial similarities that would be more trouble than it is worth, but I didn't get the chance to look into it further at the time. Best Regards, Matt On Tuesday, 19 September 2017 07:32:02 UTC+9:30, jamesl wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by Apokalypse Software Corp
Happy to brainstorm on or off list ;) On Tue, Sep 19, 2017 at 9:53 AM, Apokalypse Software Corp <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by Matt Selway
There has been a lot of work in Redline that you may not be aware of. I re-wrote it and made things simpler and faster. My delay or hold up aside from work and life getting in the way was porting a runtime. I chose and early version of Squeak for this (v2.2) as it was v close to the blue book. I still think that approach was probably folly and I need a basic core interpreter working w the most minimal set of classes possible. I do get pulled in diff direction by Pharo as I think comparability w them is a huge bonus but equally a ton more work. I'm thinking seriously about a simpler interpreter as a version 1 capable of running on the Jvm and doing Smalltalk things but SANS a runtime - to me this w be both a step forwards and backwards - even if a Java adaptor was included which it w be. - James Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
I was aware you rewrote it for Java 8 and incorporated Squeak sources, although I assumed it was just a minimal set of classes to get the basics running. I thought "fantastic!" then when to play with it and discovered it couldn't compile Bahavior.st because the parser doesn't quite like the syntax used by Squeak sources (empty blocks and literal arrays were causing errors); unfortunately I didn't have the time to patch it myself and haven't gone back to it to yet.
-- Compatibility with Pharo would be good, although even they started with Squeak didn't they? I think a lot of things they are doing with Pharo you might be able to get for free from using the JVM. Traits for example can be done using default methods on interfaces in Java 8, but I don't know how much that would mess with your interpreter nor how difficult it would be to keep it compatible with Pharo's implementation. I liked your initial philosophy (I think back when you were calling for people to adopt a class) of when implementing the core Smalltalk classes that thought be given to how it can be improved using the JVM rather than just a blind implementation of the Blue Book. I'd definitely support a simple interpreter as step 1 that can be built on later. (Of course my support might have to be metaphorical unfortunately). How easy would it be to cut out unnecessary stuff from what you already have? Or would it be re-write number 3? :-/ Cheers, Matt P.S. this conversation is making me want to dive into the code again. If only I had the time :-( On Tuesday, 19 September 2017 16:42:17 UTC+9:30, jamesl wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
>>P.S. this conversation is making me want to dive into the code again. If only I had the time :-(
You too :) I did fix those issues and had most of the runtime compiling but alas in another branch. There biggest irony is that the core isn't a massive task, the runtime is and finding time for either the hardest task of all. Still, like you said - the conversation is building up my interest - maybe just maybe I can do 14hrs a day with some added for RL - James Sent from my Commodore 64 > On 19 Sep 2017, at 6:10 pm, Matt Selway <[hidden email]> wrote: > > P.S. this conversation is making me want to dive into the code again. If only I had the time :-( -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
There biggest irony is that the core isn't a massive task, the runtime is and finding time for either the hardest task of all. So true. But maybe you can find time to push that other branch to GitHub. ;-) Who needs sleep, right? Out of curiosity, did you ever work out what the minimal set of classes would be? On Tuesday, 19 September 2017 18:18:59 UTC+9:30, jamesl wrote: >>P.S. this conversation is making me want to dive into the code again. If only I had the time :-( You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
My think the minimum has be be the core classes to build objects and send messages and no more - for now Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
I think just emitting bytecodes to call Java methods and substitute classes for its non-OOP primitives, really. Just to get the ball rolling.
-- We can write additional code in Smalltalk after that. Warmest regards, Alfonso Guerra Founder/CEO Apokalypse Software Corp. (626) 667-4285 On Tue, Sep 19, 2017 at 10:06 PM, James Ladd <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Smalltalk (dictionary) and ProtoObject are the bare essentials to ensure message sending - the rest can be built from there. Still the devil is in the details ;) Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Without the JavaAdapter though, would that allow integration with standard Java libraries? Or would you have to resort to emitting bytecodes manually for that? I assume with the rebuild you have kept access to the 'JVM' pseudo variable?
-- Even with what Alfonso is suggesting, we would still need some kind of translation layer to call the Java methods correctly? Unless ProtoObject can handle that translation itself? (Maybe I should just look at the code :-P ) Matt On Wednesday, 20 September 2017 16:58:41 UTC+9:30, jamesl wrote:
You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Yes I would enable to Java adaptor and or JVM object ;) Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by Matt Selway
I think less is more and making a Java Adaptor out of the box while helpful would probably distract from getting real Smalltalk classes done - it's something I'm thinking about Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by Matt Selway
Check out my personal GitHub repo project Stc. You can follow along if you want. No guarantees of how often I'll get to move this along ;) Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
In reply to this post by Matt Selway
Do you want to follow along - anyone? Sent from my Commodore 64 -- You received this message because you are subscribed to the Google Groups "Redline Smalltalk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Free forum by Nabble | Edit this page |