Scripting Language development

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

Episode 2 is going to be epic!, It will include the new functions (loading external libs, clr support) as well as an introduction into the nitty gritty source code for the interpreter!.

If possible, could you tell me what sort of things you would wish to see of the interpreter especially.

Filming for Episode will start sometime this month.
User avatar
bbguimaraes
Chaos Rift Junior
Chaos Rift Junior
Posts: 294
Joined: Wed Apr 11, 2012 4:34 pm
Programming Language of Choice: c++
Location: Brazil
Contact:

Re: Scripting Language development

Post by bbguimaraes »

tappatekie wrote:Episode 2 is going to be epic!, It will include the new functions (loading external libs, clr support) as well as an introduction into the nitty gritty source code for the interpreter!.

If possible, could you tell me what sort of things you would wish to see of the interpreter especially.

Filming for Episode will start sometime this month.
I was going to post that I watched it and it's really good, but I forgot... Then I was going to post that the one thing I missed was the implementation (though we got a sneak when you forgot the array argument ;)).

If I can make a suggestion, I would really like to know the high-level architecture of your implementation, and some more sneaks at specific points.

Keep up!
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

bbguimaraes wrote:I was going to post that I watched it and it's really good, but I forgot... Then I was going to post that the one thing I missed was the implementation (though we got a sneak when you forgot the array argument ;)).

If I can make a suggestion, I would really like to know the high-level architecture of your implementation, and some more sneaks at specific points.
Keep up!
Next video WILL definitely include the explanation of some interpreter source code (basic interpretation components) as well as showing off (with source) the LargeInt value type (A integer of ANY value!).

The video for episode 2 would probably be in multiple parts, it would be structured like:
Part 1: Interpreter source code and core components
Part 2: Plywood method (redo because it was out of sync on ep1), dll import and common language runtime support (+ more ;))
Part 3: Interpreter API features
However doing it like this, would mean filming it this month, and uploading it the next..., also these parts would be around 20 minutes long per part, but I plan to have them available at the same time.

Btw (@bbguimaraes), I don't fully understand what you mean by "implementation", do you mean, the actual interpreter code to execute Plywood script?
User avatar
bbguimaraes
Chaos Rift Junior
Chaos Rift Junior
Posts: 294
Joined: Wed Apr 11, 2012 4:34 pm
Programming Language of Choice: c++
Location: Brazil
Contact:

Re: Scripting Language development

Post by bbguimaraes »

That's exactly your part 1. Looking forward.
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

bbguimaraes wrote:That's exactly your part 1. Looking forward.
Can't wait to film it :P
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

Updated my initial post again, the language will now be multi-platform thanks to Mono (however it is not a guarantee since I haven't probably taken everything into account)
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

From exe help post, I have seriously under estimated the amount of work the compilation will take to actually convert the code to C# then compile that.
Reason is, that EVERY plywood function (all 370 and counting) would need a c# equivalent of that function (e.g printl would be "Console.WriteLine...")

Atm, I have a C# Code builder class which can be used like

Code: Select all

        Plywood.Compiler.CodeBuilder code = new Plywood.Compiler.CodeBuilder();
        code.AddNamespaceInclude("System");
        code.AddNetFrameworkAssembly("mscorlib");
        code.EntryPoint.AddLine("Console.WriteLine(\"Hello Word!!\");");
        code.EntryPoint.AddLine("while(true);");
        code.Compile("test.exe");
I believe, this way would make everything more cleaner when converting it to c# as everything I need is in that class to actually generate it.
The constructor of CodeBuilder automatically sets it's self up for a basic console application (having static class and static void Main in it) but can be cleared to enter your own classes etc...
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

]Hey, I have'nt made a post for a while. This,
rfeds.png
rfeds.png (32.33 KiB) Viewed 2812 times
rfeds.png
rfeds.png (27.88 KiB) Viewed 2787 times
is what I have been working on for the past few hours, it's a command prompt system which is fully integrated into Plywood, it allows you to create multiple "terminal" windows of which your plywood code can "listen" to any of them.
When I say listen, I basically mean to grab input from that terminal window but I may write output to all that are created if I wanted to.

And yes, that is me running Plywood code within Plywood code ;), and the cursor fades in and out :D

Within the interpreter I have made the following adjustments to terminal functions to allow me to print and read from multiple windows at once.
I have create a interface called ITerminal which has:

Code: Select all

object MessageSent(RunState state, TerminalMessageType type, object arg, bool set);
bool Enabled { get; set; }
MessageSent is invoked for EVERY type of terminal function, whether it's setting fore color, to setting cursor position, that function is called. The main interpreter has an array of these which automatically knows what message's go to what terminals.

All that window you see does, is just perform necessary operations for you to see this as a user interface in a form window. (I also have a ITerminal for the default Windows Command Prompt (thingy...)
Last edited by tappatekie on Mon May 14, 2012 5:12 pm, edited 3 times in total.
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

Anyone got any idea's on the console? (What stuff to add...)
User avatar
bbguimaraes
Chaos Rift Junior
Chaos Rift Junior
Posts: 294
Joined: Wed Apr 11, 2012 4:34 pm
Programming Language of Choice: c++
Location: Brazil
Contact:

Re: Scripting Language development

Post by bbguimaraes »

Auto completion? :mrgreen:
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

bbguimaraes wrote:Auto completion? :mrgreen:
Lol no... (I'm trying to keep it "low window component based...")
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

Something I knocked up with Plywood script demonstrating the use of multiple terminals!.
Also a quick question, do you guys like the slight gradient on the text? (if you noticed..)
ffrdew.png
ffrdew.png (53.07 KiB) Viewed 2768 times
User avatar
thejahooli
Chaos Rift Junior
Chaos Rift Junior
Posts: 265
Joined: Fri Feb 20, 2009 7:45 pm
Location: London, England

Re: Scripting Language development

Post by thejahooli »

I love the gradient. I didn't notice it at first, but that's why I like it. It's different enough to be interesting but not noticeable enough to be distracting.
I'll make your software hardware.
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

thejahooli wrote:I love the gradient. I didn't notice it at first, but that's why I like it. It's different enough to be interesting but not noticeable enough to be distracting.
Thanks, I never realized that :L, I just made it look a bit fancy by having a gradient text just to see what it would like, and now i'l keep it :D
tappatekie
Chaos Rift Junior
Chaos Rift Junior
Posts: 204
Joined: Mon Nov 21, 2011 3:01 pm
Current Project: Web browser from scratch
Favorite Gaming Platforms: SNES, PSP, PS1 and 3
Programming Language of Choice: C#
Location: A house near me
Contact:

Re: Scripting Language development

Post by tappatekie »

How about this? (A gradient in the background :D)
Attachments
grad.png
grad.png (33.22 KiB) Viewed 2716 times
Post Reply