[Haskell-cafe] A Procedural-Functional Language (WIP)

Rik Howard rik at dcs.bbk.ac.uk
Sun Oct 23 21:44:49 UTC 2016

Hi Sven

thanks for the response.  Some examples will definitely be produced.  The
syntax in the note is one that has been stripped down to support not much
more than is needed for the note.  On reflection, this does not make for a
good presentation.  A suggestion has been made to use the syntax of a
standard reference to make easier a conceptual evaluation of the language.
I think this could be a good way to clarify the ideas in the note; if they
stand, a more-concrete (or practical) syntax could then be considered.  The
example could certainly be done in Haskell and many other languages.  I'm
not sure of the optimisation that you mention, so far the emphasis has been
more on matters of semantics and, in the note, what effect the approach
would have on a type system.  You may be right about the readability, some
examples would be useful.  Coming soon!


On 23 October 2016 at 12:28, Sven SAULEAU <sven.sauleau at xtuc.fr> wrote:

> Hi,
> Seems interesting but I have difficulties to understand. Some concret
> example would help.
> Your example could be done in Haskell using IO Monads.
> Wouldn’t procedures be inlined as a compilation optimisation in Haskell ?
> From my point of view your proposal will degrade code readability and
> wouldn’t improve efficiency of the execution.
> As said earlier, I may have misunderstood. Feel free to correct me.
> Regards,
> Sven
> On 23 Oct 2016, at 10:52, Rik Howard <rik at dcs.bbk.ac.uk> wrote:
> Hi Richard
> thank you for your reply.  It is becoming apparent that my explanation can
> be made clearer.  I'm investigating a language that takes something like
> core Haskell (a Lambda Calculus augmented with let blocks) to satisfy its
> pure function requirements but that takes a different approach when it
> comes to IO by employing procedures.
> For IO, a procedure returns only 'okay' or an error via the mechanism that
> a function would use for returning values; the non-deterministic values
> returned by the procedure are done so with variable parameters.  For
> example, to define a procedure to echo once from standard in to out:
>     echo = try (read string) (write string) error
> The value coming from standard-in is to be captured in the 'string'
> out-variable and so is available to be written to standard-out, the 'try'
> built-in being analogous to 'if'.
> Rough (inconsistent) examples exist; its grammar and type system are in a
> slightly better state but not yet written up properly.  What I could
> quickly add as an appendix, I have but the notation needs to be made more
> standard for easier comparison.  I am working on another paper that will
> address the need for a more-concrete and standard presentation.  I hope
> that this goes some way to answering your questions; please say if it
> doesn't!
> Rik
> On 22 October 2016 at 20:35, Richard Eisenberg <rae at cs.brynmawr.edu>
> wrote:
>> Hi Rik,
>> I'm unsure what to make of your proposal, as it's hard for me to glean
>> out what you're proposing. Do you have some sample programs written in your
>> proposed language? What is the language's grammar? What is its type system
>> (stated in terms of inference rules)? Having these concrete descriptors of
>> the language would be very helpful in assessing this work.
>> Richard
>> On Oct 22, 2016, at 8:18 AM, Rik Howard <rik at dcs.bbk.ac.uk> wrote:
>> Dear Haskell Cafe Subscribers
>> on the recommendation of someone for whom I have great respect, I have
>> just subscribed to this list, it having been suggested as being a good
>> place for me to get feedback regarding a project that I have been working
>> on.  I am humbled by the level of discussion and it feels to be a very bold
>> step for me to request anybody's time for my words.
>> The linked document is a four-page work-in-progress summary: the length
>> being stipulated, potential novelty being the other main requirement.
>> Given the requirements, the summary necessarily glosses over some details
>> and is not yet, I fear, completely correct.  The conclusion is, more or
>> less, the one at which I am aiming; the properties are, more or less, the
>> ones that are needed.
>> http://www.dcs.bbk.ac.uk/~rik/gallery/work-in-progress/document.pdf
>> The work arises from an investigation into functional programming syntax
>> and semantics.  The novelty seems to be there but there is too a question
>> as to whether it is simply a gimmick.  I try to suggest that it is not but,
>> by that stage, there have been many assumptions so it is hard to be sure
>> whether the suggestion is valid.  If anyone has any comments, questions or
>> suggestions, they would be gratefully received.
>> Yours sincerely
>> Rik Howard
>> _______________________________________________
>> Haskell-Cafe mailing list
>> To (un)subscribe, modify options or view archives go to:
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>> Only members subscribed via the mailman list are allowed to post.
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
> --
> *Sven SAULEAU - Xtuc*
> Développeur Web
> contact at xtuc.fr
> 06 28 69 51 44
> www.xtuc.fr
> https://www.linkedin.com/in/svensauleau
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20161023/adf570bf/attachment.html>

More information about the Haskell-Cafe mailing list