Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Python + .Net = WOW!

Python + .Net = WOW!

Scheduled Pinned Locked Moved The Lounge
csharppythondotnetxml
13 Posts 6 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Offline
    R Offline
    Rui A Rebelo
    wrote on last edited by
    #1

    This is very cool: http://boo.codehaus.org/[^] It's a Python-like language compiled into .Net's IL with lots of other features. See a smart summary at: http://boo.codehaus.org/BooManifesto.pdf[^] If you like Python and .Net you'll be amazed with this language. I began using it 1 month ago (for XML processing) and am enjoying each day more. It is possible to use SharpDevelop to develop with it, by using an add-in. And you can (kind of) integrate Microsoft's DbgCLR into SharpDevelop. Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

    J N 2 Replies Last reply
    0
    • R Rui A Rebelo

      This is very cool: http://boo.codehaus.org/[^] It's a Python-like language compiled into .Net's IL with lots of other features. See a smart summary at: http://boo.codehaus.org/BooManifesto.pdf[^] If you like Python and .Net you'll be amazed with this language. I began using it 1 month ago (for XML processing) and am enjoying each day more. It is possible to use SharpDevelop to develop with it, by using an add-in. And you can (kind of) integrate Microsoft's DbgCLR into SharpDevelop. Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

      J Offline
      J Offline
      Judah Gabriel Himango
      wrote on last edited by
      #2

      I've been on the Boo mailing list for awhile, it is pretty cool. It will be interesting to see how they do generics... The only thing I don't care for is how easily it appears to start duck typing when the intent of the developer isn't clear enough. They really ought to have some compiler switch to force more static typing. FYI, Python + .NET = IronPython[^]. Boo is kind of a crazy bastard derivative of Python, with some cool .NETisms.

      Tech, life, family, faith: Give me a visit. I'm currently blogging about: Conversation With a Muslim Judah Himango

      R 1 Reply Last reply
      0
      • J Judah Gabriel Himango

        I've been on the Boo mailing list for awhile, it is pretty cool. It will be interesting to see how they do generics... The only thing I don't care for is how easily it appears to start duck typing when the intent of the developer isn't clear enough. They really ought to have some compiler switch to force more static typing. FYI, Python + .NET = IronPython[^]. Boo is kind of a crazy bastard derivative of Python, with some cool .NETisms.

        Tech, life, family, faith: Give me a visit. I'm currently blogging about: Conversation With a Muslim Judah Himango

        R Offline
        R Offline
        Rui A Rebelo
        wrote on last edited by
        #3

        Judah Himango wrote: Boo is kind of a crazy bastard derivative of Python Funny definition. Most of times I like the "crazy bastard" part (e.g.: closures, getters & setters, "using", static typing & parameter checking in function calls, speed, etc). Very few times I don't like (optional parameters & the : operator). Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

        1 Reply Last reply
        0
        • R Rui A Rebelo

          This is very cool: http://boo.codehaus.org/[^] It's a Python-like language compiled into .Net's IL with lots of other features. See a smart summary at: http://boo.codehaus.org/BooManifesto.pdf[^] If you like Python and .Net you'll be amazed with this language. I began using it 1 month ago (for XML processing) and am enjoying each day more. It is possible to use SharpDevelop to develop with it, by using an add-in. And you can (kind of) integrate Microsoft's DbgCLR into SharpDevelop. Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

          N Offline
          N Offline
          Nemanja Trifunovic
          wrote on last edited by
          #4

          IMHO, Python is too dynamic to fit .NET well. I think Oberon for .NET[^] has more potential.


          My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

          R D 2 Replies Last reply
          0
          • N Nemanja Trifunovic

            IMHO, Python is too dynamic to fit .NET well. I think Oberon for .NET[^] has more potential.


            My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

            R Offline
            R Offline
            Rui A Rebelo
            wrote on last edited by
            #5

            Pascal-like syntax? :~ Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. But what do you mean by: Nemanja Trifunovic wrote: too dynamic to fit .NET well If it is about dynamic variable typing, well... Boo is statically typed ;) Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

            N 1 Reply Last reply
            0
            • N Nemanja Trifunovic

              IMHO, Python is too dynamic to fit .NET well. I think Oberon for .NET[^] has more potential.


              My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

              D Offline
              D Offline
              Daniel Turini
              wrote on last edited by
              #6

              Nemanja Trifunovic wrote: IMHO, Python is too dynamic to fit .NET well. Did you ever check IronPython[^]? They don't seem to agree with you. Actually, they say "IronPython-0.6 is up to 1.7x faster than Python-2.3 on the standard pystone benchmark". The guy behind the project must know what he's doing: he's part of the CLR team now. I see dead pixels Yes, even I am blogging now!

              N 1 Reply Last reply
              0
              • D Daniel Turini

                Nemanja Trifunovic wrote: IMHO, Python is too dynamic to fit .NET well. Did you ever check IronPython[^]? They don't seem to agree with you. Actually, they say "IronPython-0.6 is up to 1.7x faster than Python-2.3 on the standard pystone benchmark". The guy behind the project must know what he's doing: he's part of the CLR team now. I see dead pixels Yes, even I am blogging now!

                N Offline
                N Offline
                Nemanja Trifunovic
                wrote on last edited by
                #7

                Daniel Turini wrote: They don't seem to agree with you. Actually, they do aagree with me: Fully dynamic - IronPython supports an interactive interpreter and transparent on-the-fly compilation of source files just like standard Python. Optionally static - IronPython also supports static compilation of Python code to produce static executables (.exe's) that can be run directly or static libraries (.dll's) that can be called from other CLR languages including C#, VB, managed C++ and many more. Note: static compilation is only partially implemented in the 0.6 public release. This will need further development before being useful.


                My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                J 1 Reply Last reply
                0
                • R Rui A Rebelo

                  Pascal-like syntax? :~ Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. But what do you mean by: Nemanja Trifunovic wrote: too dynamic to fit .NET well If it is about dynamic variable typing, well... Boo is statically typed ;) Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

                  N Offline
                  N Offline
                  Nemanja Trifunovic
                  wrote on last edited by
                  #8

                  Rui A. Rebelo wrote: Pascal-like syntax? Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. :-D I'll never get why people are so opinionated about syntax. For me, smantics is far mor important. Heck, the 3 languages I use most these days (C++, C#, Perl) all have horrible syntax IMO. If I picked languages based on syntax I would be using Modula-3 (yep, I like Pascal syntax ;P ) and Python instead.


                  My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                  S O R 3 Replies Last reply
                  0
                  • N Nemanja Trifunovic

                    Rui A. Rebelo wrote: Pascal-like syntax? Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. :-D I'll never get why people are so opinionated about syntax. For me, smantics is far mor important. Heck, the 3 languages I use most these days (C++, C#, Perl) all have horrible syntax IMO. If I picked languages based on syntax I would be using Modula-3 (yep, I like Pascal syntax ;P ) and Python instead.


                    My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                    S Offline
                    S Offline
                    Shog9 0
                    wrote on last edited by
                    #9

                    Nemanja Trifunovic wrote: I'll never get why people are so opinionated about syntax. Programming started as something i'd do for fun. Reading BNF documents was occasionally the ordeal i'd have to go through to get to where i could have fun. Pascal (and the Modula-s, and the Oberon-s...) all remind me of BNF for some reason. Hence, no fun. Yeah, it's fairly petty... but, that's taste for you. Personal preferences are strange things... :-O

                    ----------------------------------------
                    the ocean is full because everyone's crying

                    1 Reply Last reply
                    0
                    • N Nemanja Trifunovic

                      Rui A. Rebelo wrote: Pascal-like syntax? Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. :-D I'll never get why people are so opinionated about syntax. For me, smantics is far mor important. Heck, the 3 languages I use most these days (C++, C#, Perl) all have horrible syntax IMO. If I picked languages based on syntax I would be using Modula-3 (yep, I like Pascal syntax ;P ) and Python instead.


                      My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                      O Offline
                      O Offline
                      ogrig
                      wrote on last edited by
                      #10

                      Nemanja Trifunovic wrote: I'll never get why people are so opinionated about syntax. It is just a matter personal taste, but it's hard not having a preference. Mine is also for C-like languages, where you can write in primary school fashion (I don't need to write in 2 different ways to prove that I'm soooo smart and "doing sofware"): - use brackets, they are great for bracket matching. How many times I came across functions hundreds of lines long with multiple levels of indentation, poorly written, where bracket matching was the only easy way to make sure of what happens? And, primary school again, sentences and paragraphs are delimited by punctuation, not by other statements. - multiline statements without "line continuation" hacks. Write the way you learned in school, paragraphs are natural, you don't use line-continuation there. - statement termination character, and not statement delimiter like in PASCAL. It is less likely to cause mistakes, and extra ";" characters don't do anything (unless you leave one after "for (;;)" or "if ()", but hey, you can mess up in any kind of syntax) - white spaces used as delimiters and ignored otherwise, so you can write "fct ()", and not "fct()" without having nightmares about what will happen. - mandatory brackets where brackets are required (Perl sucks, so does everything else where fct ()" and "fct" are the same thing) - minimal noise, i.e. brackets instead of "begin-end". Less is much better, it allows you to concentrate on the meaning instead of working hard to filter out the noise. Python is right here, getting rid of brackets altogether is a nice idea, too bad is loses the bracket matching functionality by doing this (plus it needs the ":" at the end of the line) - generic blocks. Even "begin-end" is better than "proc ... end proc", "if ... end if" (we won't name the language here, I don't want to start a religious war :-) ) Now you might disagree with any or all my points above (and seing that you like PASCAL you probably do :-) ), but you can see that there are reasons for my preferences. Even if they are the "wrong" reasons,they are "my" reasons. As long as we both can live without saying "how can you be so stupid to prefer X over Y" the world is a large enough place for all of us. Nemanja Trifunovic wrote: For me, smantics is far mor important yes, sure. When you only need to deal with the code you wrote yourself, t

                      N 1 Reply Last reply
                      0
                      • O ogrig

                        Nemanja Trifunovic wrote: I'll never get why people are so opinionated about syntax. It is just a matter personal taste, but it's hard not having a preference. Mine is also for C-like languages, where you can write in primary school fashion (I don't need to write in 2 different ways to prove that I'm soooo smart and "doing sofware"): - use brackets, they are great for bracket matching. How many times I came across functions hundreds of lines long with multiple levels of indentation, poorly written, where bracket matching was the only easy way to make sure of what happens? And, primary school again, sentences and paragraphs are delimited by punctuation, not by other statements. - multiline statements without "line continuation" hacks. Write the way you learned in school, paragraphs are natural, you don't use line-continuation there. - statement termination character, and not statement delimiter like in PASCAL. It is less likely to cause mistakes, and extra ";" characters don't do anything (unless you leave one after "for (;;)" or "if ()", but hey, you can mess up in any kind of syntax) - white spaces used as delimiters and ignored otherwise, so you can write "fct ()", and not "fct()" without having nightmares about what will happen. - mandatory brackets where brackets are required (Perl sucks, so does everything else where fct ()" and "fct" are the same thing) - minimal noise, i.e. brackets instead of "begin-end". Less is much better, it allows you to concentrate on the meaning instead of working hard to filter out the noise. Python is right here, getting rid of brackets altogether is a nice idea, too bad is loses the bracket matching functionality by doing this (plus it needs the ":" at the end of the line) - generic blocks. Even "begin-end" is better than "proc ... end proc", "if ... end if" (we won't name the language here, I don't want to start a religious war :-) ) Now you might disagree with any or all my points above (and seing that you like PASCAL you probably do :-) ), but you can see that there are reasons for my preferences. Even if they are the "wrong" reasons,they are "my" reasons. As long as we both can live without saying "how can you be so stupid to prefer X over Y" the world is a large enough place for all of us. Nemanja Trifunovic wrote: For me, smantics is far mor important yes, sure. When you only need to deal with the code you wrote yourself, t

                        N Offline
                        N Offline
                        Nemanja Trifunovic
                        wrote on last edited by
                        #11

                        ogrig wrote: But sooner or later you'll have to maintain code written by others as well. Will I?[^] ;P I already spend way too much time maintaining other people's code, and that's exactly why I prefer more verbose syntax. Modula/Pascal is what I would like, BASIC is kinda OK too, but I almost exclusivly use C-like languages (when it comes to syntax) these days. But again, for me semantics is the king. I don't even consider C++ and C# to be similar languages. Yes, they have similar syntax, but semantics is so different that I don't even find much sense in comparing them. ogrig wrote: As long as we both can live without saying "how can you be so stupid to prefer X over Y" the world is a large enough place for all of us. :beer: to that.


                        My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                        1 Reply Last reply
                        0
                        • N Nemanja Trifunovic

                          Daniel Turini wrote: They don't seem to agree with you. Actually, they do aagree with me: Fully dynamic - IronPython supports an interactive interpreter and transparent on-the-fly compilation of source files just like standard Python. Optionally static - IronPython also supports static compilation of Python code to produce static executables (.exe's) that can be run directly or static libraries (.dll's) that can be called from other CLR languages including C#, VB, managed C++ and many more. Note: static compilation is only partially implemented in the 0.6 public release. This will need further development before being useful.


                          My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                          J Offline
                          J Offline
                          Judah Gabriel Himango
                          wrote on last edited by
                          #12

                          So they haven't fully implemented static typing with compilation in IronPython v0.6? Big deal, that has little to do with whether .NET being usuable in dynamic languages. Pretty cool (and true) story: a guy named Jim Hugunin set out to write an article about why .NET is terrible for dynamic languages. He ended up writing a dynamic language on .NET to try out his theory, only to find the reverse was true: .NET is great for dynamic languages. That experimental language became IronPython, and very recently, Jim joined the Microsoft CLR team to work on dynamic languages for the .NET framework.

                          Tech, life, family, faith: Give me a visit. I'm currently blogging about: Conversation With a Muslim Judah Himango

                          1 Reply Last reply
                          0
                          • N Nemanja Trifunovic

                            Rui A. Rebelo wrote: Pascal-like syntax? Sorry but no, thanks. I am already unhappy with Delphi: too much typing & reading. :-D I'll never get why people are so opinionated about syntax. For me, smantics is far mor important. Heck, the 3 languages I use most these days (C++, C#, Perl) all have horrible syntax IMO. If I picked languages based on syntax I would be using Modula-3 (yep, I like Pascal syntax ;P ) and Python instead.


                            My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                            R Offline
                            R Offline
                            Rui A Rebelo
                            wrote on last edited by
                            #13

                            Nemanja Trifunovic wrote: For me, smantics is far mor important. EXACTLY! But why not have both: a simple and compact syntax with a rich and expressive semantics? Eh,... BTW (since the talk is semantics), ... did I mention that Boo also suports functional programming (LISP's closures without Boost's dozens of lines of code!) and you can expand the language capabilities with macros?;) (Gee, I shoud be a car salesman! What a talent!);P Rui A. Rebelo Caminante no hay camino. El camino se hace nel caminar.

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups