Script# Update

A quick post announcing version 0.4.5.0 of script# which is now available for download - adding support for VS 2008, along with a number of fixes and some enhancements.

Just a quick heads up - I posted the latest release of script# - version 0.4.5.0... you can check it out and download it from my projects site.

This build introduces support for installing project and file templates into VS 2008. However, it continues to works with VS 2005 and .NET 2.0. It also has a number of fixes, esp. in the minimization logic that is used to compact release builds. Finally it introduces one small compiler-driven optimizations: constant inlining - so if you've got consts, they're inlined at compile time in release builds. There are many more optimizations a compiler can do - this is just a start. For a full list of changes, you can see the associated readme documentation.

Its always fun talking to folks using the technology building real solutions.

Recently, I chatted with the guys at Coveo who have built a Sharepoint plugin to do media search, and present the results using Silverlight 1.0 - they implemented their media player and client experience (shown in the image on the left) in script#. You can follow the link to see a live demo.

Martin, if you're reading this, you should find this build useful - it has a number of fixes for things you encountered, along with fixes for various issues reported by others on the script# bug list.


[ Tags: | ]
Posted on Friday, 12/21/2007 @ 2:47 PM | #Script#


Comments

11 comments have been posted.

Christiaan van Bergen

Posted on 12/21/2007 @ 4:48 PM
Thanks Nikhil.
Some of these fixes I can use really well. Keep up the good work!
Any chance of getting the ability to use nested types later on? Maybe as some sort of interpretation of the nesting in JScript but so we can use the nesting on the C# side?

Nikhil Kothari

Posted on 12/21/2007 @ 5:10 PM
Christiaan - I understand nested classes are useful - however, I don't see them as critical. While not exactly the same, internal top-level classes can be used as the workaround. Do you agree?

The reason nested classes are not supported is that they make symbol resolution even harder. When you look at an expression such as A.B.C in the compiler its quite hard to determine whether you're doing a property reference, static member reference, or namespace reference. Adding nested classes to the mix makes that even harder. The multi-dotted sequence potentially requires trying multiple symbol resolution paths to determine which one works, and would introduce quite a bit of complexity.

Furthermore supporting it would entail yet another level of depth when a nested type is referred to in script - which makes the script longer, and require more lookups.

If I make the assumption that you cannot have a top-level class named the same as a nested class, then the problem becomes much more simpler, but that is trading one constraint for another.

Michael Sync

Posted on 12/22/2007 @ 2:34 AM
Thanks. Nikhil. I also posted some of my thoughts about Script# in my blog since long time back. I thought you might say somethings about my post... I posted a link in your forum.... Have you checked it out? Please feel free to let me know if you have any comment.

BTW, it's so hard to read the spam-protection code.

Mikkel

Posted on 12/22/2007 @ 4:34 AM
Hi Nikhil,

Great update!

I've sent you an email (from your form) some time ago with the following question:

I'm having some trouble populating a list of items with different ID’s and then when clicking on them different content appears according to the ID.
Normally I would capture the ID from an event as parameter, but I can’t attach a DOMEventHandler to AnchorElement (for example) with a method that has a parameter. How can I achieve this?

Furthermore, this is possible as a Script#-enabled Web Site but not as a normal Script# project. Why is that?

Nikhil Kothari

Posted on 12/22/2007 @ 10:21 AM
Mikkel - in your event handler you can use Window.Event.SrcElement.ID to determine what was clicked and what content to show.

Andrew Yanovsky

Posted on 12/22/2007 @ 3:07 PM
Thanks! Nikhil. Script# is best.

Gurpreet Singh

Posted on 12/23/2007 @ 2:05 PM
Hey some of the fixes eplained by you are really fine and some I am working on it was really helpfull please continue te good work I am inviting u to visit my blogsite and help me make it better .....

Damjan Vujnovic

Posted on 12/24/2007 @ 12:30 AM
Hi Nikhil,

Just to let you know, few days ago the first instance of our new web betting portal (world's most performant and scalable betting site ;) ) went live - www.betdirect.com. Since it heavily relies on Script#, I wanted to thank you for the great job you did.

Some of the features:

- client-side MVC framework (variation of Observer pattern)
- client-side IoC container
- componentized design
- processing offloaded to client, as much as possible (like client-side xslt transformations, etc)
- advanced caching
- scalable and performant

Thank you again, and keep up the good work,

Damjan Vujnovic
Technical Architect
Finsoft Ltd
www.finsoft.com

Martin Simard

Posted on 1/7/2008 @ 5:51 AM
Thanks for this new release Nikhil, I will upgrade this week and give you feedback about it.

Great work and a Happy new year 2008!

Martin
Coveo

Damian Fernandez

Posted on 2/12/2008 @ 11:35 AM
Hi Nikhil, I’m a developer who's try to use your ScriptSharp Framework (An Amazing Work) . I go to the project page and downloaded the last version of Script# for Visual Studio 2008, but I've some problems with the .NET IDE when I try to run the Hello Word sample. (I follow you ScriptSharp pdf tutorial). Other things I se is the projects templates steel call "Atlas Script#.." and in your tutorial the sample images shows "ASP.NET Ajaxs Script#"...could by posted an early version?.

Thanks,
Damian.

Brian Potter

Posted on 3/3/2008 @ 8:31 AM
The link to the download seems to be broken!
The discussion on this post has been closed. Please use my contact form to provide comments.