How to improve the popularity of JAL?

119 views
Skip to first unread message

rob...@hotmail.com

unread,
Nov 23, 2020, 12:42:38 PM11/23/20
to jallib
Hi all,

I am looking for ways to improve the popularity of JAL and I would like to hear your reaction on this topic.

Currently JAL is still maintained, that is new device files are generated when new PICs are released, compiler issues are fixed (if possible) and new libraries are released. In 2020,  libraries where created for the following devices:  nRF24L01+ transceiver, digital potentiometers X9C102, X9C103, X9C104, X9C503, TM1637, SSD1306 graphics display module, nRF905 transceiver, Si5351a clock generator and a library for DFPlayer Mini.

I would like to see that more people use JAL and more people would like to contribute. 

Some ideas to get more people interested:
-) Add more libraries (not sure which though)
-) Create a multi-platform IDE (Windows, Linux, Mac)
-) Post Youtube video's about getting started with JAL
-) Extend the JAL language (not possible by me since fixing compiler bugs is not the same as extending the compiler with new features)
-) ....

Looking forward to your suggestions.

Thanks

Kind regards,

Rob


Jes

unread,
Nov 23, 2020, 2:45:16 PM11/23/20
to jal...@googlegroups.com
Hi Rob,
In the first place many thanks for your efforts in keeping up JAL.
All the points you mention are valuable, IMHO youtube has a strong impact, so I would start by doing some video tutorials with examples there.
Do you know Pic Micro Pascal?. There is a site from Thomas Henry with a nice series of examples, maybe a similar set but in JAL would be very helpful. 


A multiplatform IDE would be nice to see, (Arduino alike?).

Again many thanks for your nice work!

Jes. (JAL fan) from Olivella, Spain.



--
You received this message because you are subscribed to the Google Groups "jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jallib+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jallib/f6209cdc-efb5-4017-8439-6876b86122b5n%40googlegroups.com.

evan....@googlemail.com

unread,
Nov 23, 2020, 3:46:02 PM11/23/20
to jallib
Some insights from another place.....  I use JAL to validate another another 8bit PIC/AVR compiler.  Great Cow BASIC.

I am sharing my insights from taking on the development and release management  leadership for Great Cow BASIC.

Why?  Because Open Source tools need to be available to engineers across the world that work and offer a different experience and price point to commercial software.

I am not pushing another compiler.  So, please DO NOT have a go at me for sharing, or, the fact that this is BASIC.  

I am very, very willing to provide tooling we use to use to make life easy.  

------

The GCB community is key to what we do today and how we do it.  The outcomes produced enable people/engineers to discover, use and maintain projects using the compiler and the tool chain.

The journey to create the outcomes we have today is totally based on the community.

I collate these efforts (including my own efforts) into the releases.  The outcomes today are - in no specific order:

1. High quality compiler and supporting tool chain.  The IDE, PPSTOOL, etc etc.
2. High quality libraries.  A list of libraries is here https://github.com/Anobium/Great-Cow-BASIC-Help/wiki/libraries_overview This may help set a priority on the libraries to include.  I can certain provide lots of insights into the development program for the library.
3.  Website - with interesting material that is maintained by a webmaster.
4.  Forum - a friendly forum.
5.  Help - in many formats CHM, PDF, HTML, XML, Git WIKI etc for many different OSs and working practices by users.
6.  Demonstrations (1000s of them... and these same demonstrations can be used to the test the compiler, libraries etc.
7.  YouTube - tutorials, projects and show & tells
8.  Source code - published and controlled
9.  Installer - Windows, MacOS, Linux etc.
10.  Push messages via Twitter and Social Media. 

-----

The journey from a ZIP file for a command line Windows compiler that controlled LEDs and an LCD to the project today was as follows:

I am assuming the source code repository and forum are ok.

1. Creation of OS specific installers using a continuous build process to enable a consistent user development environment. Assign OS masters [aka lead engineer] (windows, MacOs, LInux etc).
2. Website update using TypeSetter (very easy!) - assign a webmaster.  Ensure highest quality.  Learn how Google etc assess a website for quality.
3. Establish automated testing using the demonstrations to perform compiler, library and functional testing - you will need a project team to create this capability - we use software R2BUILD to support this activity.
4. Establish automated creation of Help.  (I can give you these tools to create the Help outputs)  GCB is 438 pages of Help. Assign Editor master.
5. Start YouTube publication of tutorials based on a) chip architecture [we have standard approach for this], b) Libraries show casing and/or c) Major updates.  Need to get lots of folks to do this.  Start publication of shorts on TikTok.
6. Start Social media comms plan - need to get JAL to top search in major search engines.

This has taken 4 years and there is steady community of users.

 ----

I really hope this posts help the discussion.

Evan

sa...@tenacontrols.com

unread,
Nov 23, 2020, 4:09:36 PM11/23/20
to jallib
Hello All,

I see that a library for DFPlayer Mini was created as well as some program examples. I just downloaded the Jallib full 1.5.0 .zip and there were no DFPlayer Mini jal files. Are they somewhere else?

TenaControls

unread,
Nov 23, 2020, 4:09:50 PM11/23/20
to jal...@googlegroups.com
Hello All,

I see that a library for DFPlayer Mini was created as well as some program examples. I just downloaded the Jallib full 1.5.0 .zip and there were no DFPlayer Mini jal files. Are they somewhere else?



Regards,
Ralph Tenaglia
TenaControls,LLC

From: jal...@googlegroups.com <jal...@googlegroups.com> on behalf of rob...@hotmail.com <rob...@hotmail.com>
Sent: Monday, November 23, 2020 12:42 PM
To: jallib <jal...@googlegroups.com>
Subject: [jallib] How to improve the popularity of JAL?
 

Rob CJ

unread,
Nov 23, 2020, 4:14:17 PM11/23/20
to jal...@googlegroups.com
Hi,

The DFplayer file are in the latest bee-package which you can download from the JAL Website.

We plan to make a new official JAL release in the near future so that it will be part of the latest release.

Kind regards,

Rob


Van: jal...@googlegroups.com <jal...@googlegroups.com> namens TenaControls <sa...@tenacontrols.com>
Verzonden: maandag 23 november 2020 19:40
Aan: jal...@googlegroups.com <jal...@googlegroups.com>
Onderwerp: Re: [jallib] How to improve the popularity of JAL?
 

Mike

unread,
Nov 23, 2020, 4:26:15 PM11/23/20
to jallib
Hi Rob,

My thanks as well for all of your efforts.

A few things that come to mind that I have given thought to in the past:

* I agree that YouTube videos would help.  So many people are using YouTube to get started in things.

* Whenever I start working with a new PIC I'm surprised that the "sample" programs are almost all using crystals.  I take the sample program for my new PIC and change it to use the internal oscillator.  I think the internal oscillator should be the default sample program as it's easier to get going and not everyone may have crystals on hand.

* Some of the home page links are confusing.  The "jallib" support link does lead here, but the "jallist" support link doesn't go to the Google group.  The "jallib" main site link goes to a no longer used Google code archive.  These might be confusing to newcomers.  I'm also not sure of the difference between the "jallist" and "jallib" groups.

* I'm not sure if it's clear on the home page how to install JAL or how to update it when a new "bee" is released.

* One Microchip forum user commented about JAL, earlier in the year:
" There are some things about the JAL language that I don't like. For instance, why use "--" for comments rather than the more standard "//" or "/* ... */" pair? Well, they are standard in C, C++, and the "//" in Delphi. The "--" is used in Ada and several other languages, and there are many others:
 
https://en.wikipedia.org/wiki/Comment_(computer_programming)
 
I see that neither Delphi nor JAL are listed in that Wiki page. Maybe they should be added. "

* One thing I personally don't like about JAL is the libraries' use of lowercase, which I find difficult to read.  There have been a few libraries that I have created before they existed in JAL, but have been hesitant to contribute them since I don't like conforming to the all lowercase standard.

Just some thoughts.  Don't take them as criticisms, but as honest feedback.

Regards,
Mike

On Monday, November 23, 2020 at 12:42:38 PM UTC-5 rob...@hotmail.com wrote:

Rob CJ

unread,
Nov 24, 2020, 1:39:09 AM11/24/20
to jal...@googlegroups.com
Hi Mike,

Thanks for your comments.  Some reactions from my side.

The sample programs are generated using Python and sometimes it generates a crystal version and sometimes using tehe internal oscillator. I agree with you that not using the crystal is easier. I could have a look if I could upgrade the script to detect internal oscillators for other PICs.

I am thinking about starting a Youtube channel on it but I did not make that step (yet).

You are right about the homepage. It should be refurbished. I do have some access to the page - it is not maintained by me - but I do not have sufficient rights. Next to that I am not a webpage builder but fixing broken links is doable.

About lowercase. It was chosen a long time ago when it all started and I had to adapt to it since it was not my preferece too. It is about taste and I could live with it.

The comments. No comment 🙂

Kind regards,

Rob


Van: 'Mike' via jallib <jal...@googlegroups.com>
Verzonden: maandag 23 november 2020 22:26
Aan: jallib <jal...@googlegroups.com>
Onderwerp: [jallib] Re: How to improve the popularity of JAL?
 
--
You received this message because you are subscribed to the Google Groups "jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jallib+un...@googlegroups.com.

TenaControls

unread,
Nov 24, 2020, 1:12:09 PM11/24/20
to jal...@googlegroups.com
Thank you so much for your great work in promoting this language.

Regards,
Ralph Tenaglia
TenaControls,LLC

From: jal...@googlegroups.com <jal...@googlegroups.com> on behalf of Rob CJ <rob...@hotmail.com>
Sent: Monday, November 23, 2020 4:14 PM
To: jal...@googlegroups.com <jal...@googlegroups.com>
Subject: Re: [jallib] How to improve the popularity of JAL?
 

rob...@hotmail.com

unread,
Nov 24, 2020, 1:19:48 PM11/24/20
to jallib
Hi Evan,

Thanks for the feedback. Will have a look at what you are doing too. FYI: We do validate and compile all samples automatically as part of every build (also bee-packages) and documentation is created (see doc) but that does not meant it can be improved.

Kind regards,

Rob


Op maandag 23 november 2020 om 21:46:02 UTC+1 schreef evan....@googlemail.com:

rob...@hotmail.com

unread,
Nov 24, 2020, 1:20:31 PM11/24/20
to jallib
Hi Jes,

Will look at your suggestion. 

Thanks.

Kind regards,

Rob


Op maandag 23 november 2020 om 20:45:16 UTC+1 schreef Jesito's μFabLab:

rob...@hotmail.com

unread,
Nov 26, 2020, 3:40:27 PM11/26/20
to jallib
Hi Mike,

I thought that since the compiler handles '--' as comment it might as well be modified easily to also accept '//' as comment so I added the '//' as test to the compiler and that seems to work. The only disadvantage is that the syntax highlighting with JALEdit and JALIDE does not change since it does not recognize it as comments but it will still syntax highlighting the keywords.

So  this now passes the modified version of the compiler:

// My forever loop
forever loop
   led = ON
   _usec_delay(100_000)  // Comment
   led = OFF
   _usec_delay(400_000) 
end loop

In the above example the keyword 'forever' is syntax highlighted in the forever loop as well in the text 'My forever loop' so that is a bit confusing. I do not think that JALEdit will be changed but I do think that it could be fixed in JALIDE since Despx has been working on that. 

So with this change the compiler would accept ';' '--' and '//' for comment. Not sure what other think of this change. The request to have multiple comment lines using /* ... */ is not easy to fix.

If others think this is a welcomed change I can implement it in a final release of the compiler.

Kind regards,

Rob


Op maandag 23 november 2020 om 22:26:15 UTC+1 schreef Mike:

Rob CJ

unread,
Nov 26, 2020, 3:57:09 PM11/26/20
to jal...@googlegroups.com

Hi Mike,

Maybe I was too soon with my response. The '--' cannot be compared with '//' since a construction like a / b would no longer work. It would require more work than a single fix.

Sorry for making you happy with a dead sparrow (Dutch saying).

Kind regards,

Rob




Van: jal...@googlegroups.com <jal...@googlegroups.com> namens rob...@hotmail.com <rob...@hotmail.com>
Verzonden: donderdag 26 november 2020 21:40
Aan: jallib <jal...@googlegroups.com>
Onderwerp: [jallib] Re: How to improve the popularity of JAL?
 
--
You received this message because you are subscribed to the Google Groups "jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jallib+un...@googlegroups.com.

Mike

unread,
Nov 26, 2020, 4:00:02 PM11/26/20
to jallib
Hi Rob,

Very nice that you were able to do that, and so quickly.  I'm not sure of others, but I can certainly live with "--"...since I already have.  The comment that I posted was from a "potential" JAL beginner.  If your change does make it into the compiler, I might use it, since I am used to C comment syntax.  And I could post the change to the Microchip forum thread and see if there are any other potential JAL user barriers.

Since we're on the topic, if I wanted to look into the JAL compiler code to get some understanding of how it works...What would I use to compile it?  I have Visual Studio 6.0, Visual Studio 2005, Visual Studio 2010 Express, and Open Watcom.

Regards,
Mike

Mike

unread,
Nov 26, 2020, 4:00:32 PM11/26/20
to jallib
No problem

Regards,
Mike

Rob CJ

unread,
Nov 26, 2020, 4:20:01 PM11/26/20
to jal...@googlegroups.com
Hi Mike,

Again I was too quick. It seems to work (but I remain careful here).

Kind regards,

Rob


Van: 'Mike' via jallib <jal...@googlegroups.com>
Verzonden: donderdag 26 november 2020 22:00
Aan: jallib <jal...@googlegroups.com>
Onderwerp: Re: [jallib] Re: How to improve the popularity of JAL?
 

vasi vasi

unread,
Nov 28, 2020, 3:28:29 PM11/28/20
to jal...@googlegroups.com
A beginner should get accustomed to '--' comment as is part of JAL and JAL is not C or other language. Period. The beginner is here to learn JAL, as the C for PIC is commercial (xc8) or not having enough support and producing very bad code (SDCC). And JAL has '--' as a comment among another one.

So, please keep developing JAL as JAL.



--
Vasi

Matt Schinkel

unread,
Nov 28, 2020, 10:54:32 PM11/28/20
to jal...@googlegroups.com
I have to agree with Vasi. Keep JAL syntax as it is, don't make it more like C. I think we are here because JAL is not C.

Matt.


From: jal...@googlegroups.com <jal...@googlegroups.com> on behalf of vasi vasi <fun...@gmail.com>
Sent: November 28, 2020 3:28 PM
To: jal...@googlegroups.com <jal...@googlegroups.com>
Subject: Re: [jallib] Re: How to improve the popularity of JAL?
 

vsurducan

unread,
Nov 29, 2020, 1:00:45 AM11/29/20
to jal...@googlegroups.com
For comments jal has two options: "--" and ";"
"--" is the original comment in Jal compiler developed around 17 years ago by Wouter
";" has been added later (I think) by Kyle
Those two symbols aren't enough to comment something? C lovers? :) Please focus on serious things.
good wishes,
Vasile (since the beginning of jal, seeing all people struggle around and being wisely now)

Oliver Seitz

unread,
Nov 29, 2020, 2:41:03 AM11/29/20
to jal...@googlegroups.com
Ok then, here's another comment on the comments about comments...

I'm living with the comments as they are now. -- for Jal, ; for assembler. I don't need another symbol for one-line comments.

What I'm missing is {...} or (*...*) from pascal for multi-line comments. I have no idea how a compiler works, so I have no idea how difficult this could be.

Jal has multi-line comments, but they look rather strange...

if false then -- this the start of a comment

*+*+* The compiler never sees this *+*+*

end if -- end comment, actually

In general, what I want is a compiler that produces working, reliable output. It is me who has to give input that fits. The syntax is there to use it, not to alter it. Keep it simple, not too much redundancy.

One of the last additions Kyle made (reluctantly) was the addition of float variables. Has anyone ever used them? I haven't. They're not needed in a microcontroller. Jal has variables of arbitrary length, you can store everything as fixed point numbers. The distance to the moon in nanometres? You will need byte*10 to store that number. The number of atoms in the universe? byte*35 is enough. You can go to byte*255 on PIC18. I don't need floats. 

And I don't need another symbol for one-line comments.

If you do, put this in your compiler script:

cat my_syntax.jal | sed -e 's.//.--.g' >official_syntax.jal

Greets,
Kiste



Rob CJ

unread,
Nov 29, 2020, 4:13:09 AM11/29/20
to jal...@googlegroups.com
Hi Kiste,

Thanks for your thoughts. I will not add the '//'. Adding multi line comments is not as straight forward as single line.

About floats. I used them once in de Si5351 library (clock generator) but that was the only time I needed it.

BTW. There seems to be an issue with floats, Rob Hamerling mentioned that yesterday to me (he also registered as issue on GitHub at the compiler repository). If you use float and you assign an integer value, the compiler gets into an endless loop. A way around this to assign a float.

var float my_float_variable

my_float_variable = 32000    -- This will make the compiler hang
my_float_variable = 32000.0 -- This wil work

So even if you did not use it yet, make sure to use the workaround when you do.

I could not pinpoint the problem yet. Needs more investigation.

Kind regards,

Rob


Van: 'Oliver Seitz' via jallib <jal...@googlegroups.com>
Verzonden: zondag 29 november 2020 08:41
Aan: jal...@googlegroups.com <jal...@googlegroups.com>

Onderwerp: Re: [jallib] Re: How to improve the popularity of JAL?
--
You received this message because you are subscribed to the Google Groups "jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jallib+un...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages