Posted by: leppie | April 3, 2009

IronScheme update

Hi

Recently I have been converting a lot of procedures from their C# implementation to Scheme. This has proved to be rather successful as the compiler has matured to such a point that it is within 50% of writing the code in C#. While doing this, I have identified several optimizations that can be applied ๐Ÿ™‚ This will most notably be applied in version 2 when the compiler rewrite will happen.

For now, IronScheme only have 20 procedures left not implemented in Scheme in the (rnrs base) library with most other completely converted with the noted exception of hashtables, records, ports and exceptions. This is all while keeping the performance and GC ‘snappiness’ up to par.

As IronScheme 1.0 Beta 2 has been very successful in the last few months I have decided to make the release interval for every 500 downloads of the previous version. So, the quicker you download, the quicker a new release will appear, until I am satisfied with the requirements for a full on version 1.0 (I am kinda eager to get on with the next version!).

Cheers

leppie

Advertisements

Responses

  1. I hope you are counting code downloads ;).

  2. hello,

    when I select menu view – ironscheme shell, this message apperars :

    Unhandled exception:
    &clr
    &who: __Error.WinIOError
    &clr-type: System.IO.IOException
    &message: Descripteur non valide
    System.IO.IOException: Descripteur non valide

    รƒย  System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    รƒย  System.Console.GetBufferInfo(Boolean throwOnNoConsole, Boolean& succeeded)
    รƒย  Microsoft.Scripting.Shell.BasicConsole.WriteColor(TextWriter output, String str, ConsoleColor c)
    รƒย  Microsoft.Scripting.Shell.BasicConsole.Write(String text, Style style)
    รƒย  Microsoft.Scripting.Shell.CommandLine.PrintLogo()
    รƒย  Microsoft.Scripting.Shell.CommandLine.RunInteractive()
    รƒย  Microsoft.Scripting.Shell.CommandLine.Run()
    รƒย  Microsoft.Scripting.Shell.CommandLine.Run(IScriptEngine engine, IConsole console, ConsoleOptions options)
    รƒย  Microsoft.Scripting.Hosting.ConsoleHost.RunCommandLine(OptionsParser optionsParser)
    รƒย  System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    รƒย  System.Console.GetBufferInfo(Boolean throwOnNoConsole, Boolean& succeeded)
    รƒย  Microsoft.Scripting.Shell.BasicConsole.WriteColor(TextWriter output, String str, ConsoleColor c)
    รƒย  Microsoft.Scripting.Shell.BasicConsole.Write(String text, Style style)
    รƒย  Microsoft.Scripting.Shell.CommandLine.PrintLogo()
    รƒย  Microsoft.Scripting.Shell.CommandLine.RunInteractive()
    รƒย  Microsoft.Scripting.Shell.CommandLine.Run()
    รƒย  Microsoft.Scripting.Shell.CommandLine.Run(IScriptEngine engine, IConsole console, ConsoleOptions options)
    รƒย  Microsoft.Scripting.Hosting.ConsoleHost.RunCommandLine(OptionsParser optionsParser)
    Press enter to exit.

    Is this serious?

    thanks for your help

  3. I download and rebuilt both your latest ironscheme source and the changeset you have listed above. I still get the same error jeeve posted with build 0.2.0.87 of xacc.ide. Do I also need to get the latest version of the ide from sourceforge?

    • I will investigate, thanks ๐Ÿ™‚

  4. btw, this is on Vista64. I also noticed that 2.0.87 is the latest ide ๐Ÿ˜

    • I have never had the opportunity to test either on Vista64 or any 64-bit OS for that matter.

      Will try install my Vista64 on a VM to see if I can determine the issue.

  5. By the way. I just wanted to say that your IDE is very nice and I plan to use it for the less supported languages in .Net.

    Also, your scheme implementation hits the sweet spot for me. I will be going through the ‘Structures and Interpretation of Computer Programs’ course with it.

    Thanks for providing such useful software! ๐Ÿ™‚

    • Thanks ๐Ÿ™‚

      I will test on Vista 64 tonite, to see what is causing the aforementioned issue.

      Also, I have some intentions to amalgamate IronScheme and xacc.ide, into a decent Scheme IDE.

      Good luck with SICP. Just ask if you get stuck, and feel free to share your experiences ๐Ÿ™‚

      Cheers

      leppie

  6. Ok, I tested my latest versions on a Vista64 VM.

    Some observations:
    1. Turn UAC off (I will look into this sometime)
    2. Modify xacc.ide.exe.config, to point to Program Files (x86) (not sure if this is needed)
    3. change the argument in xacc.ide.exe.config to ‘-emacs’.

    The good news is that it does work. The bad news is on my VM it takes a long time to start, more than a minute. This is related to IronScheme and not xacc.ide, and perhaps a VM only issue (due to lack of RAM). I also noticed that it eats up to 200MB of RAM during startup, then drops eventually to about 45MB.

    I did not however experience any of the problems that was noted. ๐Ÿ˜

    The other good news is that it passes all the same tests as the x86 version. It can also rebuild itself ๐Ÿ™‚ Both of these didnt take too long. Not sure what the problem with the startup is. Guess I’ll have to use a fresh drive and install directly on PC to test.

    Over the weekend I’ll upload a new installer for xacc.ide (not sure if older NSIS has an effect). IronScheme 1.0 beta 3 will also follow soon ๐Ÿ™‚

  7. I tried your new IDE installer, but it now *crashes* the IDE if I give it a valid path to the IronScheme directory. If I remove the ‘-emacs’ under the argument element in the config xml, the IDE no longer crashes, but iron scheme still does not work.

    I tried running IronScheme.Console with the -emacs ‘flag’ from the console. I got the following error:

    Unhandled exception during evaluation:
    &assertion
    &who: “open-input-file”
    &message: “Could not find file ‘c:\\Program Files\\IronScheme\\-emacs’
    .”
    &i/o-file-does-not-exist: “-emacs”

    I’ll state the obvious here and say that it looks like it’s interpreting that flag as a file.

    Note: I uninstalled/reinstalled the latest ironscheme/xacc.ide when trying the above.

    I also had a friend check this on windows server 2008 64bit. He received the same error.

    I had UAC disabled, he had UAC enabled.


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Categories

%d bloggers like this: