Programming languages - now and then

  • (5 Pages)
  • +
  • 1
  • 2
  • 3
  • 4
  • 5

70 Replies - 9097 Views - Last Post: 25 July 2013 - 01:17 AM

#31 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7294
  • View blog
  • Posts: 12,137
  • Joined: 19-March 11

Re: Programming languages - now and then

Posted 17 June 2013 - 04:14 PM

Quote

A challenge: Name a language feature that Lisp doesn't support.


Line numbers.

This post has been edited by jon.kiparsky: 17 June 2013 - 04:15 PM

Was This Post Helpful? 0
  • +
  • -

#32 cfoley  Icon User is offline

  • Cabbage
  • member icon

Reputation: 1907
  • View blog
  • Posts: 3,953
  • Joined: 11-December 07

Re: Programming languages - now and then

Posted 17 June 2013 - 04:43 PM

Line numbers seem more like syntax to me. Since line numbers are so related to GOTO, does Lisp have an unstructured jump? Turns out it does:
http://psg.com/~dlam.../chapter32.html
Was This Post Helpful? 0
  • +
  • -

#33 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7294
  • View blog
  • Posts: 12,137
  • Joined: 19-March 11

Re: Programming languages - now and then

Posted 17 June 2013 - 04:49 PM

I think it's a bit of a trick question, really. "Lisp" covers a multitude of sins, so what we're really asking is "what language feature could not appear in s Lisp?" And I can't think of any.
Was This Post Helpful? 0
  • +
  • -

#34 AdamSpeight2008  Icon User is online

  • MrCupOfT
  • member icon


Reputation: 2216
  • View blog
  • Posts: 9,352
  • Joined: 29-May 08

Re: Programming languages - now and then

Posted 17 June 2013 - 04:56 PM

Parenthesis=les implementation (which is most likely to be indentation level)

Non-Nullable reference types in .net
Dynamic keyword for vb.net like C#
Was This Post Helpful? 0
  • +
  • -

#35 ishkabible  Icon User is offline

  • spelling expret
  • member icon





Reputation: 1617
  • View blog
  • Posts: 5,707
  • Joined: 03-August 09

Re: Programming languages - now and then

Posted 17 June 2013 - 06:53 PM

View Postcfoley, on 17 June 2013 - 11:31 PM, said:

A challenge: Name a language feature that Lisp doesn't support.


Dependent types...or any static type system for that matter but sense I have heard of statically typed lisps I will just say dependent types because only a small number of research languages support dependent types. That said you could have a statically typed lisp with dependent types but I doubt one exists at the moment.

This post has been edited by ishkabible: 17 June 2013 - 06:55 PM

Was This Post Helpful? 0
  • +
  • -

#36 RobBlob  Icon User is offline

  • New D.I.C Head

Reputation: 3
  • View blog
  • Posts: 3
  • Joined: 18-June 13

Re: Programming languages - now and then

Posted 18 June 2013 - 04:23 AM

View Postcfoley, on 17 June 2013 - 03:06 AM, said:

Smalltalk was Object Orientated (in ways you wouldn't believe -- booleans were not represented by a bit. True and False extended the abstract class Boolean!)


Actually this is not a bad implementation. The Smalltalk VM's typically represented booleans exactly as any other language does (0 and 1 of a suitably sized type). The boolean operations are defined on the abstract class, and overridden by the exact class.

Of course, the VM optimizes most of this away, so "a and: b" will reduce to a standard binary and operation.

The real surprises for many programmers are the lack of control constructs, so conditional code is represented a message "ifTrue:" to a boolean variable. It may look odd, but is actually surprisingly efficient, as later Smalltalk implementations (and particularly Self) proved.

Funnily, a functional approach is not dissimilar. There is more in common between pure OOP, as illustrated by Smalltalk, and functional approaches than between Smalltalk and C++/C#/Java's version of OOP (where polymorphism is constrained by inheritance). Like Smalltalk, most functional languages have (at least conceptually) a very limited set of primitives and build most types and control constructs from these.
Was This Post Helpful? 2
  • +
  • -

#37 cfoley  Icon User is offline

  • Cabbage
  • member icon

Reputation: 1907
  • View blog
  • Posts: 3,953
  • Joined: 11-December 07

Re: Programming languages - now and then

Posted 18 June 2013 - 04:41 AM

Aaah, I had forgotten about the control flow. I've only dabbled in Smalltalk but I remember really liking what I saw. I need to get back to it one of these days. I always assumed there was some optimisation going on behind the scenes but it's nice to have that confirmed.

Welcome to the forum, by the way!
Was This Post Helpful? 0
  • +
  • -

#38 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5643
  • View blog
  • Posts: 12,359
  • Joined: 16-October 07

Re: Programming languages - now and then

Posted 18 June 2013 - 06:03 AM

View Postcfoley, on 17 June 2013 - 06:31 PM, said:

A challenge: Name a language feature that Lisp doesn't support.


Strong data types?

Legible syntax? :P
Was This Post Helpful? 0
  • +
  • -

#39 Lemur  Icon User is offline

  • Pragmatism over Dogma
  • member icon



Reputation: 1335
  • View blog
  • Posts: 3,398
  • Joined: 28-November 09

Re: Programming languages - now and then

Posted 18 June 2013 - 07:43 AM

View Postbaavgai, on 18 June 2013 - 08:03 AM, said:

View Postcfoley, on 17 June 2013 - 06:31 PM, said:

A challenge: Name a language feature that Lisp doesn't support.


Strong data types?

Legible syntax? :P/>


It does. You can write any other language on top of LISP if you want, meaning it can work with anything if you have the desire to make it that way.
Was This Post Helpful? 0
  • +
  • -

#40 cfoley  Icon User is offline

  • Cabbage
  • member icon

Reputation: 1907
  • View blog
  • Posts: 3,953
  • Joined: 11-December 07

Re: Programming languages - now and then

Posted 18 June 2013 - 07:47 AM

Aaah yes but lisp is so easy to implement in other languages that argument comes full circle.
Was This Post Helpful? 0
  • +
  • -

#41 Curtis Rutland  Icon User is online

  • (╯□)╯︵ (~ .o.)~
  • member icon


Reputation: 4312
  • View blog
  • Posts: 7,467
  • Joined: 08-June 10

Re: Programming languages - now and then

Posted 18 June 2013 - 07:51 AM

View PostLemur, on 18 June 2013 - 09:43 AM, said:

It does. You can write any other language on top of LISP if you want, meaning it can work with anything if you have the desire to make it that way.


I think that's cheating if you have to implement the functionality yourself.
Was This Post Helpful? 0
  • +
  • -

#42 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7294
  • View blog
  • Posts: 12,137
  • Joined: 19-March 11

Re: Programming languages - now and then

Posted 18 June 2013 - 07:57 AM

View PostLemur, on 18 June 2013 - 09:43 AM, said:

It does. You can write any other language on top of LISP if you want, meaning it can work with anything if you have the desire to make it that way.


Exactly the point I was trying to get at above - I can't think of a language feature that you couldn't fold into a lisp, if you really wanted it. Most of the features that I think people will come up with are actually constraints, so they should pose only implementation issues. For example, any type system is a constraint on what sorts of values can occupy a particular slot - this is might take some ingenuity to implement well, but it's not hard to see obvious first-pass ways to make this work.

View Postcfoley, on 18 June 2013 - 09:47 AM, said:

Aaah yes but lisp is so easy to implement in other languages that argument comes full circle.


Thank you, Professor Grossman. :P

Yes, this gets around to Turing completeness pretty quick, doesn't it?
Was This Post Helpful? 0
  • +
  • -

#43 Linesofcode  Icon User is offline

  • D.I.C Head

Reputation: 6
  • View blog
  • Posts: 62
  • Joined: 23-May 13

Re: Programming languages - now and then

Posted 18 June 2013 - 08:08 AM

View Postbaavgai, on 16 June 2013 - 01:20 PM, said:

Why are Java and C++ so popular here? Simple. They're taught in school. Also, they're not taught drag and drop style. The .NET language seem to be. Your IDE can do a lot of work, even without a lot of understanding...

What's the point of having so much effort for placing a simple button in a specific coordinates?
Also, the new IDEs, for different languages, seems to take more care of that, because they'll be more attractive to developers see their results immediatly without so much effort.

View PostMartyr2, on 16 June 2013 - 01:38 PM, said:

C# is a fabulous language and might have a bit of a life if the mono project can continue to take it past Windows machines, but the rest of .NET is going to fall once Microsoft falls.

Do you really believe Microsoft will fall?
C# would be even more used if was teached in school, although is one of the most used languages. Most of the schools, proceeds this way: C > C++ > Java.

What you must take also in consideration is that, the smarthphone's software can now be developed in C# as well, even if it's for Android. This would give C# users a condition to, besides developing for Windows Phone, developing as well for others platforms.
http://xamarin.com/monoforandroid
http://unity3d.com/u...kflow/scripting

I think this should say something about the language. I don't believe it's going to end in future, I believe it would be more stronger.
Was This Post Helpful? 0
  • +
  • -

#44 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7294
  • View blog
  • Posts: 12,137
  • Joined: 19-March 11

Re: Programming languages - now and then

Posted 18 June 2013 - 08:25 AM

View PostLinesofcode, on 18 June 2013 - 10:08 AM, said:

View Postbaavgai, on 16 June 2013 - 01:20 PM, said:

Why are Java and C++ so popular here? Simple. They're taught in school. Also, they're not taught drag and drop style. The .NET language seem to be. Your IDE can do a lot of work, even without a lot of understanding...

What's the point of having so much effort for placing a simple button in a specific coordinates?


The point, for a student, would be to learn the fundamentals. Building a GUI manually is, if nothing else, a good exercise in working with dynamic logic. (oops, they just shrunk the window. What happens now?)
You might end up using a drag and drop tool, but anyone can figure that out in a few minutes. Why would you go to school to learn that? What's more interesting is being able to understand how the tool is working, or being able to build it if you need to.


Quote

Also, the new IDEs, for different languages, seems to take more care of that, because they'll be more attractive to developers see their results immediatly without so much effort.


You say that as if you think effort is a bad thing.
Was This Post Helpful? 0
  • +
  • -

#45 Linesofcode  Icon User is offline

  • D.I.C Head

Reputation: 6
  • View blog
  • Posts: 62
  • Joined: 23-May 13

Re: Programming languages - now and then

Posted 18 June 2013 - 08:39 AM

View Postjon.kiparsky, on 18 June 2013 - 08:25 AM, said:

The point, for a student, would be to learn the fundamentals. Building a GUI manually is, if nothing else, a good exercise in working with dynamic logic. (oops, they just shrunk the window. What happens now?)
You might end up using a drag and drop tool, but anyone can figure that out in a few minutes. Why would you go to school to learn that? What's more interesting is being able to understand how the tool is working, or being able to build it if you need to.

Where did I said it should be the first language? Why not: C > C++ > C# ?
Everyone likes to move controls around and see how they look instantly.

View Postjon.kiparsky, on 18 June 2013 - 08:25 AM, said:

You say that as if you think effort is a bad thing.

Effort, in most of the times, is equal to time. Putting alot of effort means that, probably, you will need more time do a simple task
Was This Post Helpful? 0
  • +
  • -

  • (5 Pages)
  • +
  • 1
  • 2
  • 3
  • 4
  • 5