Has anybody attempted to write a new language using Xojo

Since most programmers are closet megalomaniacs and all round control freaks, I was wondering if anybody has written a new programming language using Xojo.
I attempted to do so using VB in 1999, but by the time I got a reasonable parser,lister and pseudo compiler working, I kind of lost interest, especially since logical operators and comparators such as ‘If, Then’ cannot be made more basic than what they already are. Such was the task of coming up with new language keywords, I found myself, just re-inventing BASIC, hence the task was pointless.

Not pointless, quite a bit of fun and educational. Maybe pointless in regards to real world application, but not for knowledge which has direct application in the real world.

I have not written a language in Xojo, but it surely can be done. I did write a stack based language in C, worked on it for a month or two. It was pretty comprehensive, even database, network access, xml and a FFI. Was quite fun, but of no application to me or the outside world, other than the knowledge gained. I do believe it was a big help in keeping me moving forward as a programmer. I learned a lot during those days.

I am currently writing a dialetic of BASIC which will be translated and compiled by XCODE into a native app (iOS first, then for OSX), with the ultimate goal having this language be able to compile itself (lofty I know).

However, be aware that this type of app is currently in violation of the XOJO EULA, and it currently being undertaken for my own education, and can’t/won’t be deployed to the public until a) the EULA change and/or b) it can compile itself an no long be bound by the EULA

How would this be a violation of the EULA? Xojo is a tool for creating IP

This would be the only related point in the EULA I think
• You agree that if you and/or Xojo, Inc., believe that any applications you create with the Xojo IDE are designed to aid in the development of software using a language other than Xojo, said applications must include a “Made with Xojo” logo in the application’s about box and splash screen and must adhere to the rules that govern the use of said logo. Contact Xojo, Inc. to obtain the logos and usage guidelines.

The EULA is available in the IDE on the About dialog

[quote=117388:@Norman Palardy]This would be the only related point in the EULA I think
• You agree that if you and/or Xojo, Inc., believe that any applications you create with the Xojo IDE are designed to aid in the development of software using a language other than Xojo, said applications must include a “Made with Xojo” logo in the application’s about box and splash screen and must adhere to the rules that govern the use of said logo. Contact Xojo, Inc. to obtain the logos and usage guidelines.

The EULA is available in the IDE on the About dialog[/quote]

The part of the EULA, that you referenced above, would only be applicable if (and only if) the application indeed had an About Box and/or a Splash Screen. The EULA does not state that the application MUST have an About Box and Splash screen with the logo and “Made with Xojo”. It only states that the logo and “Made with Xojo” appear in those two items (assuming that they exist in the application).

You may want to tighten up the language a bit.

Well in that case :slight_smile:
Seems the EULA in the past was a lot more restrictive in its wording concerning this subject…
But I have no problem with adding such a logo

Did you miss this part?

It was followed by full legal text below it.
https://xojo.com/download/eula.php

Please don’t be an ass, it will hurt the rest of us.

amen.

[quote=117399:@Randy Baskin]The part of the EULA, that you referenced above, would only be applicable if (and only if) the application indeed had an About Box and/or a Splash Screen. The EULA does not state that the application MUST have an About Box and Splash screen with the logo and “Made with Xojo”. It only states that the logo and “Made with Xojo” appear in those two items (assuming that they exist in the application).

You may want to tighten up the language a bit.[/quote]

To me it is apparent from that excerpt that nothing prevents the creation of a development tool in Xojo. Maybe the legend started with the story that an iOS precompiler could not be released because of the EULA. So convenient an excuse that his alleged author could boast about no more than a mockup screen without running the risk of public scrutiny :wink:

[quote=117400:@Dave S]Well in that case :slight_smile:
Seems the EULA in the past was a lot more restrictive in its wording concerning this subject…
But I have no problem with adding such a logo[/quote]

Dave, please go on with your project, and make it available to the community :slight_smile:

[quote=117399:@Randy Baskin]You may want to tighten up the language a bit.

[/quote]

Farther up it is more general

[quote]* if you are creating a development tool, you will include the “Made with Xojo” logo.
[/quote]

But I suppose that could be read that you need to get a tatoo . :-/

[quote=117400:@Dave S]Well in that case :slight_smile:
Seems the EULA in the past was a lot more restrictive in its wording concerning this subject…
But I have no problem with adding such a logo[/quote]

Still it would be a good idea to check with Geoff before releasing it into the wild, as i suspect a whole language might be pushing it.

Pushing it where ? How ? Has Mathew propaganda not instilled enough misinformation ? All is required is to place a Made with Xojo logo. Not some kind of boogie man clause :confused:

So if I was to make an app with a script language into it, interpreted, compiled or otherwise, that would be “pushing it” ? Come on…

Boogie man clause :slight_smile:

Imagine if the inventors of C prevented people from writing languages with it. There would be no Windows, No VB and certainly no Xojo. The purpose of Xojo is IP to create IP. If you cant do this, then why could a fee be charged(i.e.: a license fee) to create anything? The EULA argument reminds me of the defence Napster put up years ago when they said that downloading is not stealing because the so called ‘stolen’ file is still on the owner server and therefore no crime has been committed. The parallel here is that using Xojo to create a new language does not remove, detract, abuse or alter Xojo.

The only thing I would be concerned with is you’re writing a language on top of a language that sits on top of OS APIs. So Xojo acts as a middle man between your language and the OS.

That would be having Xojo act as an interpreter.
If it produced code that could be compiled into a stand-alone app, then it would be ‘a speciality text editor’.

The original hooha came about (if I recall correctly) because someone started shipping an educational app which effectively exposed editable RBScript to the end user.

The current license seems to allow people to create an app that can be used to edit or produce (for example) C files, and call a compiler, to produce executables.
The resulting apps wouldn’t contain any actual Xojo IP, and doesn’t need to display a logo.
But the license asks for credit in the creator app, which is not unreasonable.

Dang ipad

That editor for c files etc would require a logo

Indeed.

My main concern is that you have an intermediate layer between your language and the OS. This is another layer that can add weight to the application file size, slow down as it’s in direct from your language to the OS and also a layer that can add complications. While not saying it does, the Xojo layer may contain bugs, which would then reflect in your language, or if a ‘App Store’ requirements change and that is part of the Xojo framework, users of your language are dependent on Xojo making that change… Or worst case scenario, Xojo disappear, your language will no longer be updated in the Xojo libraries.

My advice is if you want to create your own language is to create your own language from scratch, removing the dependency on a third party will slow down development, but ultimately it makes your language only beholden to the OSes it runs on.

I am not criticizing Xojo here, just saying that by having a third party in the middle, may save time in building a new language, but it has some conditions in the future…