Live data from Hacker News

Ask HN: Language compiled to Excel spreadsheets?

news.ycombinator.com

41–50 of 50 posts

Re: Ask HN: Language compiled to Excel spreadsheets?

#41

How about company that will turn your spreadsheets into apps. Start with specialized consulting and start building product to cover common use cases. Like Gigster: http://techcrunch.com/2015/07/22/uber-for-developers/ Input: Send the existing spreadsheet and maybe some description. Output: Based on spreadsheets and their history you build and host a webapp to do that.

This is precisely what we do at Cloudstitch. If anyone is interested in this model please reach out!

Re: Ask HN: Language compiled to Excel spreadsheets?

#42

Earlier quoted context omitted.

> Is a modern, object-oriented Basic really friendlier than Python or Lua? QuickBASIC had User Defined Types, FreeBASIC not only has Pointers (and therefore Function Pointers) but also adds methods to TYPES which are defined as Subroutines just like in C++. In Fact FreeBASIC can be thought of as a covert way to learn and understand C++ for QBasic programmers. As for it being an informal or hobbyist language, if one b…

>As for it being an informal or hobbyist language, if one begins by designing the proper data structures and adds the adequate functions to handle them, the resulting programs can be just as capable as those designed in any other language. Well, that is exactly my point. Basic has the reputation of being easy for beginners and hobbyists but properly written code in a recent OOP dialect of Basic doesn't look too diffe…

The secret is indeed the traditional tight integration of IDEs + Documentation + Ease of compilation and deployment of code. I'd say the first 5 points are absolutely crucial to the success of good BASIC coding environments and more languages should offer the same.

Re: Ask HN: Language compiled to Excel spreadsheets?

#43
Forgive me if I'm an idea killer, negative nancy, devil's advocate, or whatever. Although this may be functional for a few people, I don't see it gaining traction among users of Excel. I'm a grad student and my lab mates all use Excel proficiently. However, they steer away from programming or anything to do with "code." As an anecdote, I had a few terminal windows open on my laptop. One of them walked by and remarked, "Are you hacking?!"

Also, I doubt version control is something this community would begin using, simply because of the perceived effort required to get going (in reality, source control is not that complicated, but once you start talking about "repositories" you are going to lose these people). It's unfortunate, but most of society (even really smart folks!) prefer to remain ignorant to tech in general. :/

Re: Ask HN: Language compiled to Excel spreadsheets?

#44

Earlier quoted context omitted.

>As for it being an informal or hobbyist language, if one begins by designing the proper data structures and adds the adequate functions to handle them, the resulting programs can be just as capable as those designed in any other language. Well, that is exactly my point. Basic has the reputation of being easy for beginners and hobbyists but properly written code in a recent OOP dialect of Basic doesn't look too diffe…

The secret is indeed the traditional tight integration of IDEs + Documentation + Ease of compilation and deployment of code. I'd say the first 5 points are absolutely crucial to the success of good BASIC coding environments and more languages should offer the same.

I think a great example of a non-Basic language that succeeded because of 1-6 is Turbo Pascal. Its documentation was thorough enough that you could learn and use the language and its many libraries without external references (except, perhaps, to get you started).

Going with Basic instead of a different language for your IDE can be a good choice for another reason. It is, or at least was, good for marketing to people who write code but don't consider themselves developers. To the potential buyer of the IDE using Basic signals, "this is a friendly environment; we don't expect you to be a grizzled professional programmer". (This may not work today. The latest product from Blitz Research is called "Monkey" and REALbasic was renamed "Xojo" in 2010, both apparently for marketing reasons. The company behind Xojo described theirs at http://www.xojo.com/support/faq_xojonew.php)

Re: Ask HN: Language compiled to Excel spreadsheets?

#45
Resolver One was an attempt at an integrated Python-based data flow programming system and spreadsheet, but it seems the company and product died several years ago: http://www.resolversystems.com. They did open source their experimental next-generation effort, but I haven't actually seen this running: https://github.com/pythonanywhere/dirigible-spreadsheet.

I think the core issues with spreadsheets are:

1. UI and user-facing representation - different tasks could be best solved with different representations of the same underlying model 2. Expressiveness - particularly including representational power, as in their computational complexity class—the basic spreadsheet model is not Turing complete

Eve (http://incidentalcomplexity.com) is a recent serious attempt to simultaneously address both.

Numbers has several features to address (1) (the ability to view arrange sheets next to each other in space, and to give rows and columns symbolic names). One could go much farther by offering, as you suggest, code-like views of the same models; such a view could use abstraction to compactly describe and edit self-similar structure, applying a single function definition to a collection of cells.

A key question with (2), however, is the degree to which the restricted computational power is a key advantage for the accessibility of the spreadsheet model.

Re: Ask HN: Language compiled to Excel spreadsheets?

#47
post #31

I think that the advantage of Excel for non programmers is that it's less abstract and you can see all the intermediate results instead of having a mental model in your head. Also it makes some bugs show faster, because you see the immediate result. Perhaps an alternative is to make something between Excel and "text" programming. Usually a big spreadsheet has many almost independent blocks. Make some mini-spreadsheet…

> the main problem is that you cant's nest 3 for loops I'm curious what you mean by this. Care to explain?

The problem is that the spreadsheets are 2D, so you iterate easily over two variables, the row and the column.

If you need to "program" this in an Excel spreadsheet

  For i = 1 to 5
    For j = 1 to 5
      If 2 * i + j = i * j then
        Print i, j, "*"
      End If
    Next
  Next
You can "write" this in a 6x6 block with the values

    1  2  3  4  5
  1 =If(2*B$1+$A2=B$1*$A2, "*", "")
  2
  3
  4
  5 
And copy the formula from B2 to all the cells, so you get

    1  2  3  4  5
  1 
  2
  3       *
  4    *
  5

Re: Ask HN: Language compiled to Excel spreadsheets?

#48
There is far too little done to bridge traditional programming expertise with spreadsheet expertise. In that respect your idea hits close to a sweet spot. However, I think you're not quite at the optimum center of opportunity if you care about this realm; instead of making a programming language that can compile to spreadsheets (few programmers truly care about spreadsheets; few spreadsheet masters care about programming), consider making a declarative markup for ETL processes based on visualizing results in spreadsheets, with bindings in all the major programming languages.

Re: Ask HN: Language compiled to Excel spreadsheets?

#49
post #31

Earlier quoted context omitted.

> the main problem is that you cant's nest 3 for loops I'm curious what you mean by this. Care to explain?

The problem is that the spreadsheets are 2D, so you iterate easily over two variables, the row and the column. If you need to "program" this in an Excel spreadsheet For i = 1 to 5 For j = 1 to 5 If 2 * i + j = i * j then Print i, j, "*" End If Next Next You can "write" this in a 6x6 block with the values 1 2 3 4 5 1 =If(2*B$1+$A2=B$1*$A2, "*", "") 2 3 4 5 And copy the formula from B2 to all the cells, so you get 1 2…

Ah, that's what I thought you might mean. Can you talk about why you use spreadsheets in the first place, then? You're dealing with nontrivial problems if you hit this limitation, and you could write programs in a general-purpose language if you wanted to. So what do you get from Excel?

(I care about this, btw, because my real job is making a new spreadsheet.)

Post reply on HN