Jump to content

MDScript Object Oriented Programming


Rophs
 Share

Recommended Posts

Sadly the closest you can get to it is arrays, as far as I know. You can't even define your own functions.

 

Edit: You can define your own functions.

Edited by samon
Link to comment
Share on other sites

  • 1 year later...

I tried playing around with MDScript a little more and apparently you can use functions. That being said I haven't found a way to use variables from outside a function (other than passing them as parameters and returning them) inside the function. In that sense it is more like functional programming than OOP. Also it doesn't appear to be possible to use MDScript specific methods inside a user defined function.
 
e.g: 

function bar()
{
    echo @vv; //Always echoes nothing
    @vv = 'bar';
}
 
@vv = 'foo';
bar();
echo @vv; //echoes foo
 
function baz(@vv)
{
    @vv = 'baz';
    return @vv;
}
baz(@vv);
echo @vv; //still foo
 
@vx = baz(@vv);
echo @vv; //still foo
echo @vx; //vx is now baz
 
function err()
{
    echo uv('id');
}

err(); //Gives an error because uv is undefined

Edited by samon
Link to comment
Share on other sites

  • Root Admin

That being said I haven't found a way to use variables from outside a function (other than passing them as parameters and returning them) inside the function.


Tried using global keyword?

Also it doesn't appear to be possible to use MDScript specific methods inside a user defined function.


Tried passing them in?
Link to comment
Share on other sites

Global is a restricted keyword (thrice even) so that doesn't work.

As for passing in the methods, you can pass in the return values, but other than that not sure how it would work. (It is, for fairly obvious reasons, not possible to call a method stored in a variable, if that is what you mean.)

Link to comment
Share on other sites

  • Root Admin

Global is a restricted keyword (thrice even) so that doesn't work.


I shall add that to my list to review. we can probably expose the functions by default or via namespacing.

As for passing in the methods, you can pass in the return values, but other than that not sure how it would work. (It is, for fairly obvious reasons, not possible to call a method stored in a variable, if that is what you mean.)


Not possible in MDscript, or PHP? http://php.net/manual/en/functions.variable-functions.php
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Forum Statistics

    17.3k
    Total Topics
    181.4k
    Total Posts
  • Recently Browsing

    • No registered users viewing this page.
  • Upcoming Events

    No upcoming events found
  • Recent Event Reviews

×
×
  • Create New...